forEach终止循环

谬误用法一:应用break(会报错)

var array = ["第一","第二","第三","第四"];        // 间接就报错了array.forEach(function(item,index){    if (item == "第三") {        break;    }    alert(item);});

谬误用法二:应用return false(会跳过以后项,持续循环)

相当于for 循环中的continue
var array = ["第一","第二","第三","第四"];        // 会遍历数组所有元素,只是执行跳过"第三",return false上面的代码不再执行而已array.forEach(function(item,index){    if (item == "第三") {        return false;    }    console.log(item);// "第一" "第二" "第四"});console.log("以下代码")// 以下代码

正确用法:使用try catch(抛出异样)

try {    var array = ["第一","第二","第三","第四"];        // 执行到第3次,完结循环    array.forEach(function(item,index){        if (item == "第三") {            throw new Error("第三");        }        console.log(item);// 第一 第二    });} catch(e) {    if(e.message!="第三") throw e;};// 上面的代码不影响继续执行console.log("下方代码");//下方代码

参考原文