js 跳出循环后,终止循环体后代码的运行

  • Post author:
  • Post category:其他


这个问题简单点描述就是当条件成立时,不光要跳出循环,还要跳出当前执行的方法。

提到循环,方式有很多,for循环,foreach(),map(),filter(),find(),every()。


1.for循环

const arr=[1,2,3,4,5,6];
const num=4;
function exit() {
  for(let i=0;i<arr.length;i++){
    if (num === index) {
      console.log("数字已经重复,即将跳出循环")
      return false;
    }
  }
  ....  //后续代码...吧啦吧啦
}


2.双层判断

这里千万不要使用foreach(),因为foreach没有返回值(return),这就导致你在回调函数中使用return false直接失效。

推荐使用every(),代码奉上。

const arr=[1,2,3,4,5,6];
const num=4;
function exit() {
  const res = arr.every(index => {
    if (num === index) {
      console.log("数字已经重复,即将跳出循环")
      return false;
    }
  });
  if (res === false) {
    return false;
  }
  ....  //后续代码...吧啦吧啦
}

跳出循环后,如果不做处理后续代码会继续执行,因为这里的循环体内的return false只是跳出循环,加个判断就可以退出当前的方法



版权声明:本文为iblackboy原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。