JavaScript跳出循环的几种方法(break、return、continue等)附带demo

日常开发中也常用到,但是就是用的不知所以,云里雾里。哈哈哈,你是不是和我一样。接下来我们一起学习吧,有问题欢迎留言指出来。

跳出循环的方式:break,、return,、continue、抛出异常。
相同之处:都会将此时进行的语句停止。
不同之处:

  • break:是立即结束语句,并跳出语句,进行下个语句执行。
  • continue:是停止当前语句,继续执行该语句。
  • return:停止函数,必须放在函数里面
  • 使用的语句环境不一样,break和continue是用在循环或switch语句中,return是用在函数语句中。

接下来学习JS中的几种循环和跳出方式

  1. for循环
  • 跳出本次循环continue:
  var arr = [0, 1, 2, 3, 4, 5];
   for (var i = 0, len = arr.length; i < len; i++) {
     if (i == 2) continue
     console.log(arr[i]);
   }
   //当i==2时,跳出本次循环,本次循环下面的代码不在执行。但是真个循环继续执行,直到循环条件为false
   //得到结果:0,1,3,4,5
  • 跳出整个循环break:
  for (var i = 0, len = arr.length; i < len; i++) {
     if (i == 2) break
     console.log(arr[i]);
   }
   //当i == 2时,使用break跳出整个循环,后面的循环条件不在执行,直接退出整个循环。
   //得到结果:0,1
  • 多层循环嵌套
  var arr = [0, 1, 2, 3, 4, 5];
  var arr2 = ['a','b','c','d'];
  for (var i = 0, len = arr.length; i < len; i++) {
    if (i == 2) break
    console.log(arr[i]);
    for (var j = 0, len = arr2.length; j < len; j++) {
      console.log('内层',arr2[i]);
    }
  }
  //    //当i == 2时,使用break跳出整个循环,后面的循环条件不在执行,内层循环也不会执行直接退出整个循环。
得到结果:

在这里插入图片描述

  • 多层嵌套跳出外层循环
 outer:
    for (var i = 0; i < 10; i++) {
      inter:
      for (var j = 0; j < 10; j++) {
        if (j > 5) {

          break outer;
        }
        console.log(i);
      }
    } 
    //当i=0,j>5时,外层循环就终止了

得到结果:
在这里插入图片描述

  1. for-in循环
    退出方法同for循环
  2. forEach循环
    退出当前循环 return ;reutrn false ; return true ;
   var arr = [0, 1, 2, 3, 4, 5];
   arr.forEach((i)=>{
     if(i==2){
       return;
       // return false; //效果同上
       // return true; //效果同上
     }
     console.log(i);
   });
   // 在forEach循环中,return 返回任何值,都只能退出当前循环。

要想跳出整个forEach循环,可以使用抛异常的方式:

  var arr = [0, 1, 2, 3, 4, 5];
   arr.forEach((i)=>{
     if(i==2){
       throw 'jumpout';
     }
     console.log(i);
   });
   //得到结果:0,1

你可能感兴趣的:(笔记,study,常见功能,javascript,开发语言,ecmascript)