天天躁日日躁狠狠躁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 字符串連接性能優化,轉載需保留來源!

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

主站蜘蛛池模板: 偷偷鲁手机在线播放AV | 国产福利视频在线观看福利 | 女人张开腿让男人添 | 吉吉av电影 | 我要干av | 暗卫受被肉到失禁各种PLAY | 纯肉高H种马艳遇风流多 | 色欲久久综合亚洲精品蜜桃 | 亚洲大码熟女在线 | 狠狠操天天操夜夜操 | 美女pk精子2小游戏 美女MM131爽爽爽 | 亚洲日本乱码中文论理在线电影 | 亚洲H成年动漫在线观看不卡 | 草莓视频在线观看免费观看高清 | 国产AV一区二区三区传媒 | 亚洲精品国产品国语在线试看 | 国产成人精品男人免费 | 青青青青草原国产免费 | 91热久久免费频精品动漫99 | 高挑人妻无奈张开腿 | 国产成人综合网在线观看 | 国产色欲一区二区精品久久呦 | 亚洲精品一线二线三线无人区 | 久久AAAA片一区二区 | 日韩熟女精品一区二区三区 | 亚洲刺激视频 | 国色天香社区视频免费高清3 | 边摸边吃奶边做激情叫床视 | 一本色道久久88加勒比—综合 | 亚洲国产av | 黄片a级毛片 | yellow免费观看完整版直播 | 欧美日韩在线成人看片a | 欧美国产日韩久久久 | 做暖免费观看日本 | 啦啦啦 中文 日本 韩国 免费 | 久就热视频精品免费99 | 免费网站在线观看国产v片 免费完整版观看 | 把腿张开老子CAO烂你动态图 | 99视频精品免视3 | 日日a.v拍夜夜添久久免费 |