JavaScript 利用StringBuffer類提升+=拼接字符串效率
更新時間:2009年11月24日 02:13:50 作者:
JavaScript 利用StringBuffer類提升+=拼接字符串效率,需要的朋友可以參考下。
復(fù)制代碼 代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
</body>
<script type="text/javascript"><!--
var str = 'hello';
str += 'world';
//每次完成字符串連接都會執(zhí)行步驟2到6步
//實際上,這段代碼在幕后執(zhí)行的步驟如下:
/**//*
1.創(chuàng)建存儲'hello'的字符串
2.創(chuàng)建存儲'world'的字符串
3.創(chuàng)建存儲鏈接結(jié)果的字符串
4.把str的當(dāng)前內(nèi)容復(fù)制到結(jié)果中
5.把'world'復(fù)制到結(jié)果中
6.更新str,使它指向結(jié)果
*/
//為了提高性能最好使用數(shù)組方法拼接字符串
//創(chuàng)建一個StringBuffer類
function StringBuffer(){
this.__strings__ = [];
};
StringBuffer.prototype.append = function(str){
this.__strings__.push(str);
};
StringBuffer.prototype.toString = function(){
return this.__strings__.join('');
};
//調(diào)用StringBuffer類,實現(xiàn)拼接字符串
//每次完成字符串連接都會執(zhí)行步驟2步
//實際上,這段代碼在幕后執(zhí)行的步驟如下:
/**//*
1.創(chuàng)建存儲結(jié)果的字符串
2.把每個字符串復(fù)制到結(jié)果中的合適位置
*/
var buffer = new StringBuffer();
buffer.append('hello ');
buffer.append('world');
var result = buffer.toString();
//用StringBuffer類比使用+=節(jié)省50%~66%的時間
//-->
</script>
</html>
您可能感興趣的文章:
相關(guān)文章
解讀Typescript中interface和type的用法及區(qū)別
在TypeScript中,`interface`和`type`都可以用來定義自定義類型,但它們在語法、聲明合并、可擴展性、兼容性、類型注解和類型別名、訪問修飾符、聯(lián)合類型與交叉類型、實現(xiàn)接口和類型別名、映射類型、泛型參數(shù)位置、擴展對象類型以及調(diào)用簽名和構(gòu)造函數(shù)等方面存在一些差異2025-02-02
優(yōu)化網(wǎng)頁之快速的呈現(xiàn)我們的網(wǎng)頁
優(yōu)化網(wǎng)頁之快速的呈現(xiàn)我們的網(wǎng)頁...2007-06-06
javaScript window.event.keyCode 集合與測試方法
javaScript window.event.keyCode 集合,對于事件的代碼獲取可以用腳本監(jiān)聽來實現(xiàn)。2010-05-05
關(guān)于IE中g(shù)etElementsByClassName不能用的問題解決方法
今天使用getElementsByClassName寫了段小程序,在IE6、8中測試的時候就出現(xiàn)問題了,瀏覽器報錯,經(jīng)搜索找到了一個比較好的方法,是個老外寫的一個方法2013-08-08
JavaScript的ES5實現(xiàn)繼承的4種常用方法小結(jié)
繼承是面向?qū)ο筌浖夹g(shù)當(dāng)中的一個概念,這篇文章主要為大家詳細介紹了JavaScript ES5實現(xiàn)繼承的4種常用方法,感興趣的小伙伴可以了解一下2024-03-03
微信小程序?qū)崿F(xiàn)傳參數(shù)的幾種方法示例
這篇文章主要給大家介紹了關(guān)于微信小程序?qū)崿F(xiàn)傳參數(shù)的幾種方法,分別是navigator跳轉(zhuǎn)時、全局變量、列表index下標(biāo)取值以及form表單傳值的相關(guān)內(nèi)容,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-01-01

