Array.prototype.every()
定义
对数组中的每一个元素运行给定的函数,如果数组中每一个元素都能通过回调函数的测试,就会返回true,如果其中有一个元素通过回调函数的测试返回的是false,则返回false;
语法
arr.every(callback(element[, index[, array]])[, thisArg])
参数
callback
用来测试每个元素的函数,接受三个参数:
element
数组中正在处理的元素。
index | 可选
数组中正在处理的元素的索引值。
array | 可选
some()被调用的数组。
thisArg | 可选
执行 callback 时使用的 this 值。
返回值
如果回调函数的每一次返回都为 true 值,则返回 true ,否则返回 false。
使用(代码)
检测所有数组元素的大小
下例检测数组中的所有元素是否都大于 10。
function isBigEnough(element, index, array) {
return element >= 10;
}
[12, 5, 8, 130, 44].every(isBigEnough); // false
[12, 54, 18, 130, 44].every(isBigEnough); // true
使用箭头函数
箭头函数为上面的检测过程提供了更简短的语法。
[12, 5, 8, 130, 44].every(x => x >= 10); // false
[12, 54, 18, 130, 44].every(x => x >= 10); // true
注意
注意:若收到一个空数组,此方法在一切情况下都会返回 true。
*所有浏览器都支持