2017-11-10 167 views
2

对于以下的代码:Javascript - 嵌套循环添加1?

for (var x = 1; x < 2; x++) { 
 
    for (var y = 1; y < 5; y++) { x += y} 
 
} 
 
console.log(x)

为什么输出表示12?

不是环被计算如下:

1 + 1 + 2 + 3 + 4 = 11

我不在其中额外加1清楚。有人可以帮助建议吗?

+1

你内环什么都不做。是否应该有一个身体呢? – CRice

+0

代码中增加了哪些内容? –

+2

应该是2而不是12 –

回答

4

在第一个循环中,额外的一个是从x++。你循环运行x=1和内循环确实1+1+2+3+4 = 11但它会做第一个循环的x++,并成为12。之前检查条件的increment操作将完成

for (var x = 1; x < 2; x++) { 
 
    for (var y = 1; y < 5; y++) { 
 
    x = x+y; 
 
    } 
 
    console.log("x inside loop- "+x); 
 
} 
 
console.log(x)

+0

啊谢谢!我不能相信我错过了这一点。 – bellwether

+0

很高兴我帮助:) –