警报结果是13,我不确定获取它的过程是什么。我理解循环的作用和+ =的意思,但不确定它们的连接或第二个循环如何影响结果。
var v=1;
for(i=1;i<5;i++)
for(j=2;j<5;j++)
v+=1;
alert(v);
答案 0 :(得分:1)
第一个循环运行4次(形式1到4)。第二个循环运行3次(从2到4)。因此内部指令执行4 * 3 = 12次,我们有12个增量(+ = 1)。当初始值为1时,你得到的(1 + 12)是13。
答案 1 :(得分:1)
这实际上是一个非常简单的问题,您可以在任何语言中看到。
在代码的第一行,你声明“v”,它在内存中留出一点点来保留一个值。
当您说v=1
时,您将值“1”保存在该小内存中。
当你说v+=1
时,你说“从那个小内存中获取值,加一个内存,然后把结果放到那个小内存中。
你有两个循环,所以内部循环每次i
发生变化时都会执行一次 - 所以你最终会得到v+=1
由于你以1开始,你的结果会计算(4 * 3)+ 1
我是如何获得“4 * 3”处决的?你的内部循环以值2开始,并且值为5. 5-2 = 3.这就是三个。外环从1开始,到5结束; 5-1 = 4。