在javascript for循环中i ++和++ i之间有什么区别吗?

时间:2014-01-07 01:41:06

标签: javascript

我知道,在c ++中,++我比i ++更好。

++i;  // Fetch i, increment it, and return it  
i++;  // Fetch i, copy it, increment i, return copy

这是same question about c++

那么,javascript怎么样?

2 个答案:

答案 0 :(得分:1)

取自 Guffa

i ++和++ i之间的差异是表达式的值。

'值i++是增量前i的值。 ++i的值是增量后i的值。

示例:

var i = 42;
alert(i++); // shows 42
alert(i); // shows 43
i = 42;
alert(++i); // shows 43
alert(i); // shows 43

i----i运算符的工作方式相同。'

所以基本上唯一的区别就是增量的结果。

答案 1 :(得分:0)

除非您使用增量的结果,无论是在赋值中还是作为表达式的一部分,在增量前和后增量之间绝对没有区别。

如果您正在使用结果,则预增量可能会稍快一些,因为它不需要在递增时保存旧值。但是,如果您正在使用结果,则需要根据需要分配的值来选择要使用的表单 - 通常不能根据性能做出决定。