Javascript 如何编写类似于Array.prototype.every()的函数,但不适用于;几乎每一个;

Javascript 如何编写类似于Array.prototype.every()的函数,但不适用于;几乎每一个;,javascript,arrays,Javascript,Arrays,我想编写一个类似于Array.prototype.every()的函数,但是如果每种情况都为true,我不想返回true,而是给它一个误差范围。假设我给它一个x的边距,那么如果每种情况都是真的减去x,它将返回真。应该是这样写的: “最多x个元素不符合标准” 例如: [1, 2, 3, -1].almostEvery((n) => n > 0); //With a margin of 1 这将返回true,因为只有一个值小于零您可以使用This.length-This.filter(

我想编写一个类似于Array.prototype.every()的函数,但是如果每种情况都为true,我不想返回true,而是给它一个误差范围。假设我给它一个x的边距,那么如果每种情况都是真的减去x,它将返回真。应该是这样写的:

“最多x个元素不符合标准”

例如:

[1, 2, 3, -1].almostEvery((n) => n > 0); //With a margin of 1

这将返回true,因为只有一个值小于零

您可以使用
This.length-This.filter(cond).length
获取错误数,然后检查
错误