javaScript如何跳出多重迴圈break、continue
阿新 • • 發佈:2018-12-14
一、跳出for迴圈
break和continue之間的區別:
continue語句只是結束本次的迴圈,而不是終止整個迴圈,但只會跳出一重迴圈。
break語句則是結束整個迴圈過程,退出整個迴圈,但只會跳出一重迴圈。
for(var i=0;i<10;i++){ if(i>5){ break; } } console.log(i); //---6 當i=6時,退出整個迴圈 var num=0; for(var i=1;i<10;i++){ if(i%5==0){ continue; } num++; } console.log(num); //---8 當i為5的倍數時,跳出一次迴圈,故i=8.
break和continue跳出多重迴圈:
break的情況
outer: for(var i=0;i<10;i++){ inter: for(var j=0;j<10;j++){ if(i>5){ console.log(i); ----6 break outer; } } }
這是break到最外面迴圈裡面的
outer: for(var i=0;i<10;i++){ inter: for(var j=0;j<10;j++){ if(i>5){ console.log(i); //----6,7,8,9 break inter; } } }
這是break到內面的迴圈的時候,雖然暫時不會跳出,但是執行夠4次以後,還是跳出了
continue的情況
var num = 0; outer: for (var i = 0; i < 10; i++) { inter: for (var j = 0; j < 10; j++) { if (i>5 && i<8 ) { console.log(i); //----6,7 continue outer; } num++; } } console.log(num); //--- 80
凡是i大於5小於8的時候都會跳出outer迴圈,num = (10-2)*10 = 80
var num = 0; outer: for (var i = 0; i < 10; i++) { inter: for (var j = 0; j < 10; j++) { if (i%2) { console.log(i); //----1,3,5,7,9 continue inter; } num++; } } console.log(num); //--- 50
凡是i為偶數的時候都會彈出繼續迴圈,所以,會少了50次。