利用JavaScript重构数组的every方法 实现底层逻辑
every 判断每一个数组元素是否符合函数内表达式,只要有一个不符合立马跳出循环不往后判断
- 参数:function(item,index,arr){}
- 返回值:true(所有数组元素都符合条件) false(有一项不符合原函数)
- 修不修改原数组:不修改原数组
Array.prototype.myEvery = function (callback) {
for (var i = 0; i < this.length; i++) {
if (!callback(this[i], i, this)) {
return false
}
}
return true
}
var arr3 = [1, 2, 3, 4, 5]
var res3 = arr3.every(function (item, index, arr) {
return item > 2
})
console.log(res3, arr3);//false [ 1, 2, 3, 4, 5 ]