简单的for循环将无限进行,我无法说清为什么

时间:2018-08-17 19:20:17

标签: javascript for-loop

for (var i = 10; i < 41; i+2) {
    console.log(i);
}

我正在学习基本的javascript,当我在chrome上运行它时,它发疯了。我认为循环将无限进行,但我不明白为什么。

但是当我将i + 2更改为i++时,它可以正常工作。

我正在尝试打印10到40之间的偶数,这就是为什么我将i + 2更改为i++的原因。

我不允许将i增加2吗?

4 个答案:

答案 0 :(得分:6)

您永远不会更改i的值。您的表达式不是i的值赋值。

您需要一个addition assignment +=

i += 2

for (var i = 10; i < 41; i += 2) {
    console.log(i);
}

答案 1 :(得分:1)

尝试一下:

for (var i = 10; i < 41; i = i+2) {
    console.log(i);
}

for (var i = 10; i < 41; i +=2) {
    console.log(i);
}

答案 2 :(得分:1)

您需要将值存储回变量中。

                         ↓↓
for (var i = 10; i < 41; i=i+2) {
    console.log(i);
}

答案 3 :(得分:1)

仅编写i+2即可计算出新值,但不会将其存储回变量中。

要将i加2,您需要编写:

i = i + 2

或速记:

i += 2

它在您写i++时有效,因为它是

的缩写
i = i + 1