新增数组方法

1、every

有一个条件不满足,就返回false

  • every() 方法测试一个数组内的所有元素是否都能通过某个指定函数的测试。它返回一个布尔值。
  function isBelowThreshold(currentValue) {
      // return currentValue < 38; //false
      return currentValue < 40; //true

    }
    var array1 = [1, 30, 39, 29, 10, 13];
    
    console.log(array1.every(isBelowThreshold));
  • 实际应用
    //  如果arr1的name字段的值,全部在arr2里面就返回true,否则返回false
 var arr1=[
       {
         id:1,
         name:"杨颖"
       },
       {
         id:2,
         name:"赵丽颖"
       }
     ]
     var arr2=['杨颖',"赵丽颖"]
// 现在返回true

更改下arr2的值  var arr2=['杨颖']
//返回false

//实现

  function isEqual(arr1=[],arr2=[]){
        return arr1.every(item=>{
          return arr2.indexOf(item.name)!==-1
        })
     }
     var arr1=[
       {
         id:1,
         name:"杨颖"
       },
       {
         id:2,
         name:"赵丽颖"
       }
     ]
     var arr2=['杨颖']
    //  如果arr1的name字段的值,全部在arr2里面就返回true,否则返回false
    console.log(isEqual(arr1,arr2))

2.some

some() 方法测试数组中是不是至少有1个元素通过了被提供的函数测试。它返回的是一个Boolean类型的值。(只要有一个通过就返回true)

   function isBelowThreshold(currentValue) {
      return currentValue < 2; //true

    }
    var array1 = [1, 30, 39, 29, 10, 13];
    
    console.log(array1.some(isBelowThreshold));

参考链接

数组方法

原文地址:https://www.cnblogs.com/wlhappy92/p/arrayfunc.html