一. 定义

**every()** 方法用于检测数组所有元素是否都符合指定条件(通过函数提供)。

二. 用法

**every()** 方法使用指定函数检测数组中的所有元素:

  • 如果数组中检测到有一个元素不满足,则整个表达式返回 **false**,且剩余的元素不会再进行检测。
  • 如果所有元素都满足条件,则返回 **true**

注意:

  • **every()** 不会对空数组进行检测。
  • **every()** 不会改变原始数组。

    三. 手写代码

    1. Array.prototype.newEvery = function (fn) {
    2. let arr = this;
    3. for (let i = 0; i < arr.length; i++) {
    4. if (!fn(arr[i])) {
    5. return false;
    6. }
    7. }
    8. return true;
    9. }

    四. 测试代码

    ```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 ```