Javascript - 嵌套循环添加1?

时间:2017-11-10 20:51:16

标签: javascript loops for-loop nested

以下代码:

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 个答案:

答案 0 :(得分: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)