every 和 some
代码语言:javascript复制every:
every()
方法测试一个数组内的所有元素是否都能通过
指定函数的测试。它返回一个布尔值。 some:some()
方法测试数组中是否至少有一个元素通过了
由提供的函数实现的测试。如果在数组中找到一个元素使得提供的函数返回 true,则返回 true;否则返回 false。它不会修改数组。
const a = [1, 2, 3, 4, 2, 5, 6, 6]
Array.prototype.myEvery = function (cb) {
for (let i = 0; i < this.length; i ) {
// 如果当前元素返回的测试结果不成立 返回false
if (cb(this[i]) != true) return false
}
return true
}
Array.prototype.mySome = function (cb) {
for (let i = 0; i < this.length; i ) {
// 主要有元素测试结果返回true 表示通过,直接返回true 跳出接口
if (cb(this[i])) return true
}
return false
}
console.log(a.myEvery((item) => item >= 2)); // false
console.log(a.mySome((item) => item == 2)); // true