天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

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精品网站 | 成人毛片100部免费看 | 午夜片无码区在线观看 | 背着老婆爆操性感小姨子 | 亚洲人日本人jlzzy | 哒哒哒高清视频在线观看 | 床伴在线观看免费高清完整泰剧第四集 | 亚洲精品电影天堂网 | 我半夜摸妺妺的奶C了她软件 | 99久久99久久久99精品齐 | 国拍在线精品视频免费观看 | 肉奴隷 赤坂丽在线播放 | 国产黄大片在线视频 | 岳扒开让我添 | 牛牛在线1视频 | 久久亚洲欧美国产综合 | 解开美女胸衣2破解版 | 亚洲日本国产综合高清 | 麻豆传煤网站网址入口在线下载 | 变态露出野外调教 | 一级毛片全部免 | 一本道本线中文无码 | 国产亚洲AV精品无码麻豆 | 草b是什么感觉 | 超碰视频97av | 美美哒高清在线播放8 | 二级片免费看 | 2017欧美狠狠色 | 99久久久久精品国产免费麻豆 | 国产精品人妻无码99999 | 电影果冻传媒在线播放 | 99久久就热视频精品草 | 久久人妻少妇嫩草AV蜜桃99 | 九九黄色大片 | 午夜国产一区在线观看 | 老司机亚洲精品影院在线观看 | 三色午夜秀 | 超碰在线视频caoporn | 91精品一区二区综合在线 | 亚洲精品久久区二区三区蜜桃臀 | 亚洲精品中文字幕无码A片蜜桃 |