在JavaScript中,为什么“反向”循环比“for”快一个数量级?

在这些基准测试中,
http://jsperf.com/the-loops,Barbara Cassani表示“反向时间”循环更快,

while (iterations > 0) {
    a = a + 1;
    a = a - 1;
    iterations--;
}

比通常的“for”循环:

for (i = 0; i < iterations; i++) {
    a = a + 1;
    a = a - 1;
}

为什么?

更新

好吧,忘记它,测试中有一个错误,迭代= 100,每页只执行一次.因此,减少它就意味着我们并没有真正进入循环.抱歉.

最佳答案 这是因为每个JavaScript引擎的内部细节.不要将它用于优化,因为你不能逻辑地指望它随着引擎的变化总是更快.例如,查看
last revision of test you’ve linked并注意,如果最近的浏览器存在差异,则差异要小得多.

点赞