一個for迴圈操作陣列的效率問題
- 詳細內容
- 分類:Javascript
- 發佈:2013-02-18, 週一 23:25
- 點擊數:2257
Stoyan Stefanov在 Javascript 設計模式中提到一個for迴圈操作陣列的效率問題,
一般我們在使用for迴圈來操作陣列時,通常都會使用到陣列的長度,
像是這樣:
for(var i=0;i<myarray.length;i++){
//some codes
}
但是這種作法會在每次的迴圈當中,都要計算一次陣列的長度,因此造成迴圈的效率降低。
如果使用 for迴圈來操作 HTMLCollection 物件時,這問題會更明顯。
要解決這問題,可以以預先紀錄陣列的長度來取代每次在迴圈中都進行的計算:
for(i=0, max=myarray.length; i<max ;i++){
}
當然還有更好的最佳化的寫法,但只在極端的效能要求下才有可能會需要。
話說這本書還真不錯,或許你也該買一本來看看。
按個讚!~支持本站!~
FB推薦載入中
你可能會有興趣的文章
- 陣列物件 Array
- String.valueOf()傳回字串物件的原始值
- String.toUpperCase()將字串字母變大寫
- String.toLowerCase()將字串字母變小寫
- 字串物件三種擷取子字串方法的差異
- String.substring()取得子字串