我仍然有点麻烦地掌握for循环中发生的事情。只是想知道是否有人愿意解释究竟发生了什么,使其输出等于16?提前谢谢!
var x = 1;
for (var i = 0; i < 3; i++) {
x += 5 * i;
}
答案 0 :(得分:2)
var x = 1;
x的值等于1,因此循环中的第一次迭代会说。
for (var i = 0; i < 3; i++) {
x += 5 * i;
}
基本上这就是发生的事情:
x的值为1,在第一次迭代中,i的值为0,所以
x + (5*0) = 1 //Because 5*0 is 0 and 0+1 = 1
在第二次迭代中,x 1的值和i的值为1,所以
x + (5*1) = 6 // Because 5*1 is 5 + 1 = 6
在第三次迭代中,x的值为6,i的值为2,所以
x + (5*2) = 16 // Because 5*2 is 10 + 6 = 16
希望这有助于您了解正在发生的事情。
答案 1 :(得分:1)
for循环是一种执行一组指令一定次数的方法。在您的情况下,您正在执行3次操作。
第一遍:x = 1.将(5 * 0)加到x。 x = 1. i增加1,现在为1.
第二遍:x = 1.将(5 * 1)加到x。 x = 6. i增加1,现在为2.
第三遍:x = 6.将(5 * 2)加到x。 x = 16. i增加1,现在为3.
第四遍:控制变量i不再满足循环条件(i <3),因此它打破了循环,导致x的最终值为16
答案 2 :(得分:0)
循环运行3次,因为i值从0,1,2开始,在循环结束时X值也将变为16。