js中 every()和 some()方法

642 阅读1分钟

every():

对数组中的每一项运行给定函数,如果该函数对每一项都返回 true,则返回 true。

some():

对数组中的每一项运行给定函数,如果该函数对任一项返回 true,则返回 true。

异同

every()和 some(),它们都用于查询数组中的项是否满足某个条件。

对every()来说,传入的函数必须对每一项都返回 true,这个方法才返回 true;否则,它就返回 false。

而 some()方法则是只要传入的函数对数组中的某一项返回 true,就会返回 true。

举例

//every()方法

var numbers = [1,2,3,4,5,4,3,2,1];

var everyResult = numbers.every(function(item, index, array){

return (item > 2);

});

alert(everyResult); //false


//some()方法


var someResult = numbers.some(function(item, index, array){

return (item > 2);

});

alert(someResult); //true

以上代码调用了 every()和 some(),传入的函数只要给定项大于 2就会返回 true。对于 every(),

它返回的是 false,因为只有部分数组项符合条件。对于 some(),结果就是 true,因为至少有一项是大于 2 的。