问题: forEach 使用 break 报错,顶该?
forEach结合try…catch()可以跳出循环
try {
var arr = [1, 2, 0, 3, 4];
arr.forEach(item => {
//跳出条件
if (item === 0) {
throw new Error("LoopTerminates");
}
//do something
console.log(item);
});
} catch (e) {
if (e.message !== "LoopTerminates") throw e;
};
其他方法
1、some():当内部return true时跳出整个循环
var arr = [1,2,3,4,5];
arr.some(item => {
if(item == 3) {
return true;
}
console.log(item );
});
every():当内部return false时跳出整个循环
var arr = [1,2,3,4,5];
arr.every(item => {
if(item == 3) {
return false;
}else{
console.log(item);
return true;
}
});