因此,以下两个函数会打印出相同的结果。
console.log("i++");
for (i=1; i<=3; i++) {
console.log(i); // 1, 2
}
console.log("++i");
for (i=1; i<=3; ++i) {
console.log(i); // 1, 2
}
这非常直观,因为我特别要求后增加一个并按增量增加另一个。 在for循环内运行之前增加值是非常理想的行为。这个行为是否一致?,这个javascript是特定的还是这是使用++ i,i ++语法和for循环的编程语言的标准行为?
答案 0 :(得分:6)
for
循环标头中的第三个表达式在每次迭代后进行评估。因此:
i
已初始化为1
i <= 3
(发现为true
)i++
或++i
发生除了较小的语法差异外,这正是1976年C程序中发生的事情。