这个问题简单点描述就是当条件成立时,不光要跳出循环,还要跳出当前执行的方法。
提到循环,方式有很多,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 版权协议,转载请附上原文出处链接和本声明。