最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript string字符串優(yōu)化問題

 更新時間:2011年07月31日 20:59:38   作者:  
今天看到一個很久的帖子說string連接優(yōu)化問題。于是自己也測試一下。寫了個很簡單的代碼
復制代碼 代碼如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>test</title>
<script type="text/javascript">
function winProps(){
var message = [];
var str;
var data = new Date();
var mils1 = data.getTime();
//array數(shù)組
for(var i = 0; i<500000;i++)
message.push("This window is ");
message.join(" ");
data = new Date();
var mils2 = data.getTime();
arrayMils = mils2 - mils1;
//字符串直接連接
for(var i = 0; i<500000;i++)
str+="This window is ";
data = new Date();
var mils3 = data.getTime();
stringMils=mils3-mils2;
//顯示內容,不重要
var mes = [];
mes.push("時間1:");
mes.push(mils1);
mes.push("\n時間2");
mes.push(mils2);
mes.push("\n時間3");
mes.push(mils3);
mes.push("\narray所用時間");
mes.push(arrayMils>=0?arrayMils:arrayMils+1000);
mes.push("\nstr連接所用時間");
mes.push(stringMils>=0?stringMils:stringMils+1000);
alert(mes.join(" "));
}
</script>
</head>
<body>
<input type="button" value="點我" onclick="winProps();"/>
</body>

結果不像一般的說法,用array會快。在ie9,8。ff,google,搜狗等ie核心的瀏覽器下測試了一下,確實在數(shù)量級100000以上的測試中array方法比用“+”的方法會慢。
1000000次的結果
ie第一次(大概,ie復制不了,圖就不截了)
復制代碼 代碼如下:

array所用時間 890
str連接所用時間 450

ie可能是內存沒有回收第二次點會彈出警告,并且時間用到1400和1200,點多幾次后,+=的連接方式耗時回到400,難倒是array對象沒有回收?打開任務管理器,再刷新一次ie瀏覽器,內存降了100多m,應該研究一下ie的javascript內存回收機制。
ff
復制代碼 代碼如下:

時間1: 1312102053720
時間2 1312102053842
時間3 1312102053882
array所用時間 122
str連接所用時間 40

google(也復制不了數(shù)據(jù))
array所用時間 200
str連接所用時間 100
opera
時間1: 1312102258270
時間2 1312102258460
時間3 1312102258592
array所用時間 190
str連接所用時間 132
順便說一下,在數(shù)據(jù)到5000000后ff拋出了個異常,應該是內存溢出了。。。(ps,不是很懂)
錯誤: uncaught exception: 8.375396749959738e-274
在ie下測試果斷警告,再后來out of memory。
當然怎么大的數(shù)據(jù)連接,在現(xiàn)在的網(wǎng)頁是不可能出現(xiàn),數(shù)據(jù)處理應該是在后臺做的。老師的主機不敢裝這么多瀏覽器
其實是array的jion,太消耗時間。沒有加入這一句之后opera,google就顯示出array的優(yōu)勢:
opera結果:
復制代碼 代碼如下:

時間1: 1312101715553
時間2 1312101715622
時間3 1312101715749
array所用時間 69
str連接所用時間 127
[code]
ie結果
array所用時間700
str連接所用時間500
ff
[code]
時間1: 1312101925895
時間2 1312101925945
時間3 1312101925979
array所用時間 50
str連接所用時間 34

google
array所用時間17
str連接所用時間100
去查查jion的機制再寫吧。
ps:瀏覽器版本
google12.0.742.122
ff5.0.1
opera11.50
ie8.0.6001.18702
pss:ie處理速度不給力

相關文章

  • js播放wav文件(源碼)

    js播放wav文件(源碼)

    如何用JS播放wav文件,理論上用js在網(wǎng)頁里嵌入一個window播放器的插件,可以播放的。,不過通用性不是很好,IE下可以用,感興趣的朋友可以參考下哈本文
    2013-04-04
  • JS打印方法的幾種方法

    JS打印方法的幾種方法

    本文主要介紹了JS打印方法的幾種方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-07-07
  • 如何使用Bootstrap的modal組件自定義alert,confirm和modal對話框

    如何使用Bootstrap的modal組件自定義alert,confirm和modal對話框

    本文我將為大家介紹Bootstrap中的彈出窗口組件Modal,此組件簡單易用,效果大氣漂亮且很實用,感興趣的朋友一起學習吧
    2016-03-03
  • Bootstrap Table使用方法解析

    Bootstrap Table使用方法解析

    這篇文章主要為大家詳細介紹了JS組件Bootstrap Table使用方法,具有一定的實用性和參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • 微信小程序canvas分享海報功能

    微信小程序canvas分享海報功能

    這篇文章主要為大家詳細介紹了微信小程序canvas分享海報功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • JS制作可以選項卡切換的年歷

    JS制作可以選項卡切換的年歷

    這篇文章主要為大家分享了JS制作類似于選項卡切換的年歷,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • JS實現(xiàn)的簡單拖拽購物車功能示例【附源碼下載】

    JS實現(xiàn)的簡單拖拽購物車功能示例【附源碼下載】

    這篇文章主要介紹了JS實現(xiàn)的簡單拖拽購物車功能,涉及javascript事件響應及頁面元素動態(tài)操作相關實現(xiàn)技巧,并附帶完整實例源碼供讀者下載參考,需要的朋友可以參考下
    2018-01-01
  • JS實現(xiàn)兩個大數(shù)(整數(shù))相乘

    JS實現(xiàn)兩個大數(shù)(整數(shù))相乘

    大數(shù),即超出語言所能表示的數(shù)字最大范圍的數(shù)字,那么如何實現(xiàn)兩個大數(shù)相乘呢?下面有個不錯的方法,大家可以參考下
    2014-04-04
  • 小程序通過小程序云實現(xiàn)微信支付功能實例

    小程序通過小程序云實現(xiàn)微信支付功能實例

    本文主要介紹了小程序通過小程序云實現(xiàn)微信支付功能實例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • js實現(xiàn)鼠標切換圖片(無定時器)

    js實現(xiàn)鼠標切換圖片(無定時器)

    這篇文章主要為大家詳細介紹了js實現(xiàn)鼠標切換圖片,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-01-01

最新評論

襄樊市| 民勤县| 行唐县| 阳谷县| 玉溪市| 凯里市| 辰溪县| 德庆县| 平远县| 苍南县| 汝城县| 江达县| 中江县| 纳雍县| 辽阳县| 翼城县| 岳普湖县| 镇平县| 加查县| 花垣县| 江源县| 新巴尔虎左旗| 卢龙县| 娄底市| 青阳县| 周至县| 武鸣县| 凤阳县| 庆阳市| 惠安县| 长沙市| 江源县| 辛集市| 綦江县| 嘉义县| 英德市| 元谋县| 百色市| 元谋县| 迭部县| 桂平市|