一. 定义
**every()**
方法用于检测数组所有元素是否都符合指定条件(通过函数提供)。
二. 用法
**every()**
方法使用指定函数检测数组中的所有元素:
- 如果数组中检测到有一个元素不满足,则整个表达式返回
**false**
,且剩余的元素不会再进行检测。 - 如果所有元素都满足条件,则返回
**true**
。
注意:
**every()**
不会对空数组进行检测。**every()**
不会改变原始数组。三. 手写代码
Array.prototype.newEvery = function (fn) {
let arr = this;
for (let i = 0; i < arr.length; i++) {
if (!fn(arr[i])) {
return false;
}
}
return true;
}
四. 测试代码
```javascript const arr = [1, 2, 3, 4]; console.log(arr.every(item => item > 0)); // true console.log(arr.newEvery(item => item > 0)); // true
console.log(arr.every(item => item > 1)); // false console.log(arr.newEvery(item => item > 1)); // false ```