js中 break continue return

break、continue都具有跳转作用

break语句用于跳出代码块、循环、switch。

  • eg:
        var i= 0
        var j=6
        do{
            ++i
            if(i==2) break
        }while(i
  • eg:
       for(var i=0;i<10;i++){
            console.log(i)//0  1  2
            if(i===2)break
        }

continue语句用于立即终止本轮循环,开始下一轮循环

  • eg:
        var i= 0
        var j=6
        do{
            ++i
            if(i==2) continue
            console.log(i)//1,3,4,5,6
        }while(i
  • eg:
        for(var i=0;i<5;i++){
            
            if(i===2)continue
            console.log(i)//0,1,3,4
        }
        var i = 0;

label

  • label相当于定位符,用于跳转到程序的任意位置。通常与break语句和continue语句配合使用,跳出特定的循环。
  • eg:
    outFor:
      for (var i = 0; i <3; i++){
        for (var j = 0; j <3; j++){
          if (i === 1 && j === 2) break outFor;
          console.log(i,j,'---------------------j');
        }
        console.log(i)
      }
    console.log('-------------------------------------------------------------')
    for(var i=0;i<3;i++){
        for(var j=0;j<3;j++){
            if(i==1&&j==1) break
            console.log(i,j,'------------j')
        }
        console.log(i)
    }

结果:


image.png

上面的连个例子,有label的循环嵌套,直接跳出循环嵌套。若没有label只能跳出当前层循环,继续执行外层循环

  • continue label 会强制继续执行循环(退出内部循环,执行外部循环)
for(var i=0;i<3;i++){
    for(var j=0;j<3;j++){
        if(i==1&&j==1) break
        console.log(i,j,'------------j')
    }
    console.log(i)
}
console.log('-------------------------------------------------------------')
continueOut:
for(var i=0;i<3;i++){
    for(var j=0;j<3;j++){
        if(i==1&&j==1) continue continueOut;
        console.log(i,j,'------------j')
    }
    console.log(i)
}
//这里区分一下continue  label,和break,
//continue  label跳出当前循环,不会执行外部循环代码,直接让外部循环做++运算,进行下一次循环,
//break跳出当前循环,但是会继续执行外部循环代码

结果:


image.png
  • label也可以用于跳出代码块。
out: 
{
  console.log(1);
  break out;
  console.log('不会输出');
}
console.log(2);

return

  • return语句用于指定函数返回的值并跳出函数。return语句只能出现在函数体内,出现在代码中的其他任何地方造成语法错误
  • eg:
      var i=3
      function fun() {
          if(i===3){
              return i+2
          }else{
              return i+4
          }
      }
      console.log(fun())//5
  • eg:
function fun() {
    return
}
console.log(fun())//undefined
  • return false;返回错误的处理结果;终止处理;阻止提交表单;阻止执行默认的行为。
    有时候我们习惯用return false 来阻止浏览器的默认行为,但是每次return false 的时候,实际上干了3件事情:
  1. event.preventDefault()
  2. event.stopPropagation()
  3. 跳出函数,并返回数据

关于return false 参考链接:
[https://blog.csdn.net/yuzhouchangwan1990/article/details/42644781?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control]

你可能感兴趣的:(js中 break continue return)