首页 > 编程知识 正文

Vue进阶幺零七arrforEach 跳出循环

时间:2023-05-04 14:08:05 阅读:204695 作者:3036

文章目录 一、前言二、应用 try···catch 捕获异常实现三、应用 arr.some() 或者 arr.every()四、拓展阅读


一、前言

我们都知道for循环里要跳出整个循环是使用break,但在数组中用forEach循环如要退出整个循环呢?使用break会报错,使用return也不能跳出循环。

使用break将会报错:

var arr = [1,2,3,4,5];var num = 3;arr.forEach(function(v){if(v == num) {break;}console.log(v);});

使用return也不能跳出整个循环:

var arr = [1,2,3,4,5];var num = 3;arr.forEach(function(v){if(v == num) {return;}console.log(v);});

那么在用forEach()遍历数组时要如何才能跳出循环呢?经过查找资料后,找到以下两种方法可以实现跳出循环。

二、应用 try···catch 捕获异常实现 try{var array = ["first","second","third","fourth"];array.forEach(function(item,index){if(item === "third"){var a = aaaa;// first second 后就报错,就跳出循环了throw new Error("ending");//报错,就跳出循环}else{log(item);}})}catch(e){if(e.message == "ending"){log("结束了") ;}else{log(e.message);}} 三、应用 arr.some() 或者 arr.every()

some()当内部return true时跳出整个循环:

var arr = [1,2,3,4,5];var num = 3;arr.some(function(v){if(v == num) {return true;}console.log(v);});

every()当内部return false时跳出整个循环:

var arr = [1,2,3,4,5];var num = 3;arr.every(function(v){if(v == num) {return false;}else{console.log(v);return true;}}); 四、拓展阅读 《Vue进阶(幺零六):子组件处理父组件异步值传递给子组件处理》

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。