Javascript从循环内更改循环变量

时间:2014-01-01 21:02:07

标签: javascript variables for-loop continue

我有一个像这样的for循环

for (var i = 0; i < 100; i += 4) {
    // code with i;
}

我想将i的值从循环内更改为某个值。我知道你可以在评估最终表达式之后使用continue更改i的值,但是如果我想将i的值更改为40更具体的内容会怎样?

这是我的一次尝试

loop:
for (var i = 0; i < 100; i += 4) {
    for (var i = 0; i <= 40; i++) {
        continue loop;
    }
}

有更好的方法吗?

2 个答案:

答案 0 :(得分:1)

直接改变我:

for (var i = 0; i < 100; i += 4) {
    i = 15000;
}

这会立即退出循环,但你可以做任何你想做的事。

您应该阅读function scope以了解这些内容的工作原理。 For循环与函数有点不同,因为它们是一种语言结构,但同样的范围理论也适用。

答案 1 :(得分:1)

增量变量的scope始终在循环块内可用,这允许您访问循环块内的增量变量。

for (var i = 0; i < 100; i += 4) {
    if (condition)  i = 40 ;
    /* put any condition to avoid the infinite loop and continue with your rest of code */
}