javascript中每个和过滤器之间的区别?

Uda*_*ddy 5 javascript performance

我想知道javascript中哪些功能Array.prototype.everyArray.prototype.filter快速功能?我知道的区别是每个都可以通过返回false来停止,过滤器不能通过返回false来停止.除了这个差异还有其他吗?如果其中哪一个有索引?

小智 15

这些功能完全不同.

Array.prototype.filter 将在回调中创建一个与您的条件匹配的所有元素的数组

function isBigEnough(element) {
  return element >= 10;
}
var filtered = [12, 5, 8, 130, 44].filter(isBigEnough);
// filtered is [12, 130, 44]
Run Code Online (Sandbox Code Playgroud)

Array.prototype.every 如果数组中的每个元素都与回调中的条件匹配,则返回true

function isBigEnough(element, index, array) {
  return (element >= 10);
}
var passed = [12, 5, 8, 130, 44].every(isBigEnough);
// passed is false
passed = [12, 54, 18, 130, 44].every(isBigEnough);
// passed is true
Run Code Online (Sandbox Code Playgroud)