[1,2,3].forEach(function(el) { if(el === 1) break;}); 如何使用 JavaScript 中的新 forEach 方法执行此操作?我尝试过 return;、return false; 和 break。break 崩溃,return 正常
[1,2,3].forEach(function(el) {
if(el === 1) break;
});
我该如何使用 forEach
JavaScript 中的新方法来实现这一点?我试过了 return;
, return false;
, break
. break
崩溃了, return
除了继续迭代什么也没做。
您可以使用 every 方法:
[1,2,3].every(function(el) {
return !(el === 1);
});
ES6
[1,2,3].every( el => el !== 1 )
对于旧浏览器支持使用:
if (!Array.prototype.every)
{
Array.prototype.every = function(fun /*, thisp*/)
{
var len = this.length;
if (typeof fun != "function")
throw new TypeError();
var thisp = arguments[1];
for (var i = 0; i < len; i++)
{
if (i in this &&
!fun.call(thisp, this[i], i, this))
return false;
}
return true;
};
}
更多详细信息 请点击此处 .