数组的扩展-array.some()和array.every()区别?

 

                array.some()和array.every()区别?

 

  1. some():方法用于检测数组中的元素是否有满足指定条件的,若满足返回true,否则返回false;
  2. every():方法用于检测数组中所有元素是否都符合指定条件,若符合返回true,否则返回false;

     一:some()

  • 语法:array.some(function(item,index,array){

                    //item:当前元素的值;

                    //index:当前元素的索引;

                    // array:当前元素的数组对象;

                })

  • some()方法会依次执行数组的每个元素;
  • 如果有一个元素满足条件,则表达式返回true,剩余的元素不会再执行检测。如果没有满足条件的元素,则返回false
  • 注意:some()不会对空数组进行检测;

                 some()不会改变原始数组;

//下面看一下some()例子:
let aStudent=[
      {
           name:"keri",
           age:20
       },
       {
           name:"Join",
           age:25
       },
       {
           name:"Line",
           age:16
       }
  ];
 //some()只要有一个满足的就返回true,没有满足的返回false;
  let result=aStudent.some(function(item){
         return item.age>18;
  })
  console.log(result) //true

 

二:every()

  • 语法:array.every(function(item,index,array){

               //item:当前元素的值;

                    //index:当前元素的索引;

                    // array:当前元素的数组对象;

                })

  • every()方法使用指定函数检测数组中的所有元素;
  • 如果数组中检测到有一个元素不满足,则整个表达式返回false,且剩余的元素不会再进行检测。如果所有元素都满足条件,则返回true;
  • 注意:every()不会对空数组进行检测;

                every()不会改变原来的数组

//下面看一下every()例子:
let aStudent=[
      {
           name:"keri",
           age:20
       },
       {
           name:"Join",
           age:25
       },
       {
           name:"Line",
           age:16
       }
  ];
  //every()所有都满足才会返回true,否则返回false;
  let result=aStudent.every(function(item){
         return item.age>18;
  })
  console.log(result) //false

   今天就到这里了,拜拜~~~~~

 

 

 

 

你可能感兴趣的:(数组的扩展-array.some()和array.every()区别?)