var num = 0;
outermost:
for(var i= 0; i < 10; i ++) {
for(var j= 0; j < 10; j++) {
if (i == 5 && j == 5){
break outermost;
}
num ++;
}
}
alert(num)//55
知道break
是直接跳出label
语句执行alert(num)
问:当i
,j
都为5时,num
是怎么得到55
的?
中止循环条件为i,j同时为5,外部循环中i要从0变为5需要对内部代码执行5次,这时先不管j(因为只有j为5而i不为5还是不符合中止条件的),内部执行了5次循环次数为10的内部循环(num自增10次),所以算起来num自增了5*10次,也就为50了。然后当i=5时,只要将内部循环执行5次(j达到5)就可以中止了,也就是再进行5次num自增,即最后num的值为55,中断循环结束。写的多了点,希望你看得懂哈