在this網站上有一個for循環變體的列表。我可以理解for(var i=0, len=arr.length; i<len ;i++)
循環的用法(其中arr
是一個數組),因爲arr.length
不是在每一步都計算出來,所以似乎有一個邊際性能增益。然而使用其他變體的優點是什麼?例如,循環像For循環javascript中的變化
for (var i=arr.length; i--;)
for (var i=0, each; each = arr[i]; i++)
是否有通過使用循環變動不同性能的任何顯着的變化?即使是非常大的陣列,我通常也會使用for(var i=0, len=arr.length; i<len ;i++)
。所以我只想知道我在這裏錯過了什麼。
「遞減」循環在js中快得多。至於最後一個我不會使用它,因爲在js false == 0 ==「」。 – mpm 2012-03-30 09:41:43
可能重複的[JavaScript - 循環真的更快...?](http://stackoverflow.com/questions/1340589/javascript-are-loops-really-faster-in-reverse) – Matt 2012-03-30 09:43:21
@camus第二個通過例如循環可能會有用。 DOM元素的集合。 – 2012-03-30 09:45:31