脚本宝典收集整理的这篇文章主要介绍了js實例教程-js數組性能實例分析,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。小寶典致力於為廣大程序猿(媛)提供高品質的代碼服務,請大家多多光顧小站,小寶典在此謝過。
1.在數組添加的過程中盡量使得數組內容的類型保持一致
2.數組添加的時候:
相比兩種concat方法的傳參,當接受參數為數組時,執行效率要高於接受參數為非數組
索引器多數情況下執行效率要高於push方法
當執行次數越來越多時,索引器的執行效率開始不如push方法
3.字符串的情節,建議先形成數組,用數組的形式添加進去,然後用join分割形成字符串. 因為用+=拼接字符串是十分耗性能.如:
let str1 = ""; let len = 0; while(len<10000){ str1 += len+"";
len++; }
let arrStr = []; let len = 0; while(len<10000){ arrStr[len] = len; len++; } let str2 = arrStr.join("");
像上面代碼中 str1的形成速度就沒有str2的要快速.
當字符串相對較小(小於20字符)且連接數量也較小時(小於1000個),所有的瀏覽器使用加法運算符都能在不到1毫秒內輕鬆完成連接。增加字符串數量或大小時,IE7中性能會明顯下降。字符串大小增加時,Firefox中加法運算符和數組成技巧性能差異會變小。字符串數量增加時,Safari中加法運算符和數組成技巧性能差異會變小。改變字符串數量或大小時,Chrome和opera中加法運算符一直保持領先優勢。
所以,由於在各瀏覽器下性能不一致,選用技術取決於實際情況和面對的瀏覽器。
大多數情況下,加法運算符是首選;如果用戶主要使用IE6或7,並且字符串大小較大或數量較多時,那麼數組技術就很值得。
1.在數組添加的過程中盡量使得數組內容的類型保持一致
2.數組添加的時候:
相比兩種concat方法的傳參,當接受參數為數組時,執行效率要高於接受參數為非數組
索引器多數情況下執行效率要高於push方法
當執行次數越來越多時,索引器的執行效率開始不如push方法
3.字符串的情節,建議先形成數組,用數組的形式添加進去,然後用join分割形成字符串. 因為用+=拼接字符串是十分耗性能.如:
let str1 = ""; let len = 0; while(len<10000){ str1 += len+"";
len++; }
let arrStr = []; let len = 0; while(len<10000){ arrStr[len] = len; len++; } let str2 = arrStr.join("");
像上面代碼中 str1的形成速度就沒有str2的要快速.
當字符串相對較小(小於20字符)且連接數量也較小時(小於1000個),所有的瀏覽器使用加法運算符都能在不到1毫秒內輕鬆完成連接。增加字符串數量或大小時,IE7中性能會明顯下降。字符串大小增加時,Firefox中加法運算符和數組成技巧性能差異會變小。字符串數量增加時,Safari中加法運算符和數組成技巧性能差異會變小。改變字符串數量或大小時,Chrome和OPEra中加法運算符一直保持領先優勢。
所以,由於在各瀏覽器下性能不一致,選用技術取決於實際情況和面對的瀏覽器。
大多數情況下,加法運算符是首選;如果用戶主要使用IE6或7,並且字符串大小較大或數量較多時,那麼數組技術就很值得。
4.注意JS的垃圾回收機制(不記得了去百度,這裡推薦點擊打開鏈接)
覺得可用,就經常來吧!Javascript技巧 腳本寶典 歡迎評論哦! js技巧,巧奪天工,精雕玉琢。小寶典獻醜了!
以上是脚本宝典为你收集整理的js實例教程-js數組性能實例分析全部内容,希望文章能够帮你解决js實例教程-js數組性能實例分析所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。