如何在underscore.js中破坏_.each函数

您不能脱离每种方法。它复制了本机forEach方法的行为,本机forEach不提供转义循环(抛出异常除外)。

您可以使用其他功能,例如-

  • _.find:找到元素后便跳出循环。例如,

_.find([1, 2, 3, 4], (element) => {
   //在这里检查您的状况
   if (element === 2) {
      return true;
   }
   //用这里的元素做你想要的
   //...-
});
  • 从每个抛出异常。例如,

try {
   _([1, 2, 3, 4]).each((element) => {
      //在这里检查您的状况
      if (element === 2) {
         throw new Error();
      }
      //用这里的元素做你想要的
      //...-
   })
}
catch (e) {
   //没做什么。
}