JavaScript短路Array.forEach就像调用break

JavaScript短路Array.forEach就像调用break,第1张

JavaScript短路Array.forEach就像调用break

有没有内置的能力

break
forEach
。要中断执行,您将必须抛出某种异常。例如。

var BreakException = {};try {  [1, 2, 3].forEach(function(el) {    console.log(el);    if (el === 2) throw BreakException;  });} catch (e) {  if (e !== BreakException) throw e;}

Javascript异常不是很漂亮。

for
如果您确实需要传统循环,则传统循环可能更合适
break

使用

Array#some

而是使用

Array#some

[1, 2, 3].some(function(el) {  console.log(el);  return el === 2;});

之所以

some
可行,
true
是因为只要按数组顺序执行任何回调,就返回return
true
,从而使其余部分的执行短路。

some
,它的反函数
every
(将在上停止
returnfalse
),以及
forEach
所有ECMAscript Fifth
Edition方法,都需要将它们添加到
Array.prototype
缺少它们的浏览器中。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/4886125.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-11
下一篇2022-11-12

发表评论

登录后才能评论

评论列表(0条)

    保存