不明白for套for

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)

不理解这句话,一直不明白for套for到底是怎么回事。
i是外层的行?,j就是每个行的元素?

阅读 3.5k
5 个回答

第一次
i=0 i<10 然后执行j=0 j<10 j++ j=1 j<10 j++ ....j=9 j<10 j++ j=10 不满足j<10 跳出j循环 i++
第二次
i=1 i<10 然后执行j=0 j<10 j++ j=1 j<10 j++ ....j=9 j<10 j++ j=10 不满足j<10 跳出j循环 i++
第三次
i=2 i<10 然后执行j=0 j<10 j++ j=1 j<10 j++ ....j=9 j<10 j++ j=10 不满足j<10 跳出j循环 i++



第十次
i=9 i<10 然后执行j=0 j<10 j++ j=1 j<10 j++ ....j=9 j<10 j++ j=10 不满足j<10 跳出j循环 i++
i=10 不满足i<10 停止循环

对啊,最外面的就是循环最慢的那个,你这个10行10列,先循环第一行的10列,在继续下一行的10列,外面的for执行一次,里面就要执行一个轮回

你要数1到5这5个数,并打印出来,所以你写了一个循环。

然后你觉得不够,你要数5次1到5,所以你又写了一个循环,并把之前的循环嵌入在里面。

那么循环嵌套作用是什么?

你的理解没有问题,理解成i是行,j是列,外层的for循环一次,内部的循环j的值从0到9进行了一轮。。。。直到i和j都到5为止

这个outermost:是什么作用?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题