我的問題比較簡單。但我懷疑答案是複雜而有趣的。我有兩個在Javascript中循環的代碼片段。爲什麼這種迭代方法更快?
片段答:
//Fast
var l = arr.length;
for (var x = 0; x < l; x++) {
dosmth = arr[x];
}
片段B:
//Very Fast
var l = arr.length;
var x = 0;
while (x>l) {
dosmth = arr[x];
x++;
}
片段B是顯著比片段A.快,這是爲什麼?我懷疑這是因爲代碼段A中有更多範圍或上下文更改,但我找不到任何文檔。
似乎你的邏輯檢查被翻轉x < l vs x > l – Submersed
你測試過哪些瀏覽器?第二個例子在* every *瀏覽器中更快嗎?另外,你如何找到這些方法的運行時間? –
您正在使用哪個JavaScript引擎? – uncoder