javascript - for循环嵌套问题
阿神
阿神 2017-04-11 13:05:18
[JavaScript讨论组]
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)
问:当ij都为5时,num是怎么得到55的?

阿神
阿神

闭关修行中......

全部回复(6)
巴扎黑

中止循环条件为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,中断循环结束。写的多了点,希望你看得懂哈

迷茫

同时为5才退出循环,那就是5*10+5,所以num=55

天蓬老师

i循环了5次的同时j循环了50次, 到第6次(i=5)时j循环了5次跳出,50+5

天蓬老师

break outermost;这个是什么用法,不会报错吗

大家讲道理

for循环基本的问题啊,建议你拿张纸一个一个列出来,把循环过程写一遍,这有助于你理解for循环,无关于js,基本的语言都是这么回事,真的,写一遍你就透彻了

黄舟

1.外层循环i从0至4执行5次,内层循环j从0至9执行10次,num增加5 * 10 = 50
2.外层循环i=5时,内层循环j从0至4执行5次,j递增到5时跳出,num增加5
50 + 5 = 55

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号