一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

JavaScript 字符串連接性能優化

復制代碼 代碼如下:
var str = "hello";
str += " world";

后臺所做工作:
1)創建存儲 "hello" 的字符串,且使 str 指向它。
2)創建存儲 "world" 的字符串。
3)創建存儲結果的字符串。
4)將 str 中的當前內容復制到結果字符串中。
5)把 world 復制到結果字符串中。
6)更新 str ,使 str 指向結果字符串。
每拼接一次字符串就循環重復2)~6),如果重復成百上千次則會非常消耗資源,影響性能。
解決方法:
使用 Array 對象存儲字符串,之后使用 join()方法輸出結果。
仿照 Java 中的 StringBuffer 類。
復制代碼 代碼如下:
function StringBuffer(){
this._strings = new Array;
}
StringBuffer.prototype.append = function (str){
this._strings.push(str);
}
StringBuffer.prototype.toString = function (){
return this._strings.join("");
}

測試性能:
代碼1:使用 "+=" 拼接字符串
復制代碼 代碼如下:
var d = new Date();
var str = "";
for(var i=0;i<10000;i++){
str += "test";
}
var d2 = new Date();
document.writeln(d2.getTime()-d.getTime());

代碼2:使用 StringBuffer
復制代碼 代碼如下:
var d = new Date();
var str = new StringBuffer();
for(var i=0;i<10000;i++){
str.append("test");
}
var res = str.toString();
var d2 = new Date();
document.writeln(d2.getTime()-d.getTime());

從多次測試結果看來,使用StringBuffer 可以節省50%以上的時間。

JavaScript技術JavaScript 字符串連接性能優化,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 四虎影视国产精品永久在线 | 99久久精品免费看国产高清 | 欧美在线视频网 | 免费国产最新进精品视频 | 奇米影视狠狠干 | 国产成人综合在线观看网站 | 欧美一区二区三区激情啪啪 | 色视频在线观看 | 九九视频在线看精品 | 91精品日韩| 亚洲综合网国产福利精品一区 | 亚洲伊人久久大香线蕉结合 | 91精品成人免费国产片 | www.色在线 | 国产精品免费观看网站 | 福利视频一区二区三区 | 亚洲国产二区三区久久 | 精品福利一区 | 成人国产激情福利久久精品 | 欧美激情一区二区三区在线播放 | 日韩三级一区二区三区 | 丁香七月婷婷 | 一区二区三区午夜 | 亚洲小色网 | 日本一本在线视频 | 欧美成人免费一级人片 | 黄色网页在线观看 | 在线视频一区二区三区四区 | 国产成人亚洲精品2020 | 伊人色综合网一区二区三区 | 久久精品亚洲欧美日韩久久 | 91探花福利精品国产自产在线 | 欧美激情视频在线观看一区二区三区 | 一国产大片在线观看 | 狠狠亚洲婷婷综合色香 | 日韩一区二区三区中文字幕 | 永久网址:fb000.xyz| 免费精品国产福利片 | 欧洲女人性开放免费网站 | 真人一级毛片国产 | 午夜大片免费完整在线看 |