我看了Is there a performance difference between i++ and ++i in C?:
如果得到的话,i ++和++ i之间是否存在性能差异? 价值没用?
JavaScript的答案是什么?
例如,以下哪项更好?
1)
for(var i=0;i<max;i++){
//code
}
2)
for(var i=0;i<max;++i){
//code
}
答案 0 :(得分:9)
以下是有关此主题的文章:http://jsperf.com/i-vs-i/2
++i
似乎稍微更快(我在firefox上测试过),根据文章,其中一个原因是:
使用i ++,在你可以增加i之前必须创建一个新的i副本。使用++ i,您不需要额外的副本。 i ++将在递增i之前返回当前值。 ++ i返回递增版本i。
答案 1 :(得分:-3)
没有。执行时间没有区别。两个代码片段的区别在于我增加了。
for(i = 0; i < max; i++)
{
console.log(i);
}
第一个例子将产生结果:0,1,2,3,...,max-1
for(i = 0; i < max; ++i)
{
console.log(i);
}
第二个例子将产生结果:1,2,3,...,max
i ++在操作后递增值。 ++ i在操作之前递增值。
除了在++ i上进行的少一次迭代之外没有性能差异,因为增量是在第一次操作之前完成的