在 for 循环中,循环声明中的最终表达式仅在迭代完成后运行(或者,换一种说法 - 它在迭代开始时运行,第一次迭代除外)。这个:
for (let i=0; i<3; i++)
{
alert(i);
}
等价于
for (let i=0; i<3;)
{
alert(i);
i++;
}
【讨论】:
下面提到的语法似乎在逻辑上是错误的? (for循环-JavaScript)答案
The below mentioned syntax seems logically wrong? (for loop -JavaScript)下面提到的语法似乎在逻辑上是错误的? (for循环-JavaScript)i = 0;
for( ;i<3; ){
alert(i++);
}
上面的代码应该在第一次迭代后输出一个“1”,因为“i”已被初始化为 0。相反,第一个警报会显示一个“0”。这在逻辑上如何正确,因为第一个输出应该是递增的值本身?alert(i++);
这在语法上等于代码
for (let i=0; i<3; i++)
{
alert(i);
}
【问题讨论】:
标签: javascript for-loop syntax
在 for 循环中,循环声明中的最终表达式仅在迭代完成后运行(或者,换一种说法 - 它在迭代开始时运行,第一次迭代除外)。这个:
for (let i=0; i<3; i++)
{
alert(i);
}
等价于
for (let i=0; i<3;)
{
alert(i);
i++;
}
【讨论】: