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)//55 

知道break是直接跳出label语句执行alert(num)
问:当ij都为5时,num是怎么得到55的?

冉冉说
浏览 539回答 1
1回答

慕妹3242003

中止循环条件为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,中断循环结束。写的多了点,希望你看得懂哈
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript