var iNum = 0;//声明一个变量iNum并赋值为0
outermost: // 做一个标签outermost
for (var i=0; i<10; i++) //外循环0至9
{
for (var j=0; j<10; j++)//外循环0到9
{
if (i == 5 && j == 5) //当外循环的i和内循环的j同时等于5的时候就使用continue跳出外层的当前循环 继续下一次
{
continue outermost;//开始跳
}
iNum++;//iNum变量自加一
}
}
alert(iNum); //输出 "95"
关键理解
continue outermost;就行了
这是跳出本次循环,因为标记在最外层。所以也就是跳出内层循环,从外层接着执行
也就是正常是10*10=100,这里调过了i=5的时候,j=5,6,7,8,9这5次,也就少了5,等于95
在 i 不等于5的时候 外面和里面循环都是正常的 也就是说 当 i=4 的时候 j = 9的时候 iNum = 50;
然后i = 5 的时候 j = 5的时候 iNum= 50 + 5。然后这个时候 continue 了,也就是在i = 5的情况下,j 在5直接跳出来了。直接从 i =6 在开始 那 i =6 到 i = 9循环了4次,里面循环10次 就是40 。40 + 55 = 95