函数里使用数组方法,箭头函数中return问题

函数里使用数组方法,箭头函数中return问题的记录
fun(){
let arr = [1,2,3,4];
arr.foreach(item => {
if(item === 1){
console.log("1");
return; //这里只是return结束foreach的方法,不会也停止外部函数的执行
}
}
//这里不会停止
console.log("2") // 这个还是会执行
}

所以想循环判断后停止外部函数执行的话加个变量即可

fun(){
let arr = [1,2,3,4];
let flag = false;
arr.foreach(item => {
if(item === 1){
console.log("1");
flag = true;
return; //这里只是return结束foreach的方法,不会也停止外部函数的执行
}
}
if(flag){
return; //这里执行的return就可以停止外部函数的执行了
}
console.log("2"); // 现在这里就不会执行
}

原文地址:https://www.cnblogs.com/yoona-lin/p/15208855.html