javaScript如何跳出多重循环break、continue

一、跳出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次。

  

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注