新手怎么学做电商,win10优化大师好用吗,自动采集更新网站源码,代注册公司要多少钱Array.prototype.forEach 没有返回值 参数1#xff1a;遍历数组时需要执行的回调函数 回调函数参数1#xff1a;数组的每一项 item回调函数参数2#xff1a;每一项的下标 index回调函数参数3#xff1a;整个数组 array 参数2#xff1a;这个回调函数的 this 指向 Array.pr…Array.prototype.forEach 没有返回值 参数1遍历数组时需要执行的回调函数 回调函数参数1数组的每一项 item回调函数参数2每一项的下标 index回调函数参数3整个数组 array 参数2这个回调函数的 this 指向 Array.prototype.myForEach function (callback) {var arr this,len arr.length,_self arguments[1] || window;for (var i 0; i len; i) {callback.apply(_self, [arr[i], i, arr]);}
}Array.prototype.map 返回回调函数执行之后的返回值组成的新数组 参数1遍历数组时需要执行的回调函数 回调函数参数1数组的每一项 item回调函数参数2每一项的下标 index回调函数参数3整个数组 array 参数2这个回调函数的 this 指向 Array.prototype.myMap function (callback) {var arr this,len arr.length,_self arguments[1] || window,resArr [];for (var i 0; i len; i) {resArr.push(callback.apply(_self, [arr[i], i, arr]));}return resArr;
}Array.prototype.filter 筛选出满足条件的数组项并组成的新数组返回 参数1遍历数组时需要执行的回调函数 回调函数参数1数组的每一项 item回调函数参数2每一项的下标 index回调函数参数3整个数组 array 参数2这个回调函数的 this 指向 Array.prototype.myFilter function (callback) {var arr this,len arr.length,_self arguments[1] || window,resArr [];for (var i 0; i len; i) {callback.apply(_self, [arr[i], i, arr]) resArr.push(arr[i]);}return resArr;
}Array.prototype.every 对数组进行检测只要有一个不满足回调函数给定的条件就返回 false 全部满足条件才返回 true 参数1遍历数组时需要执行的回调函数 回调函数参数1数组的每一项 item回调函数参数2每一项的下标 index回调函数参数3整个数组 array 参数2这个回调函数的 this 指向 Array.prototype.myEvery function (callback) {var arr this,len arr.length,_self arguments[1] || window,res true;for (var i 0; i len; i) {if (!callback.apply(_self, [arr[i], i, arr])) {res false;break;}}return res;
}Array.prototype.some 对数组进行检测只要有一个满足回调函数给定的条件就返回 true 全部都不满足条件才返回 false 参数1遍历数组时需要执行的回调函数 回调函数参数1数组的每一项 item回调函数参数2每一项的下标 index回调函数参数3整个数组 array 参数2这个回调函数的 this 指向 Array.prototype.mySome function (callback) {var arr this,len arr.length,_self arguments[1] || window,res false;for (var i 0; i len; i) {if (callback.apply(_self, [arr[i], i, arr])) {res true;break;}}return res;
}Array.prototype.reduce 每次回调函数执行就把初始值当做 prev 传入reduce 方法返回最终汇总的单个值 参数1遍历数组时需要执行的回调函数 回调函数参数1初始值回调函数参数2数组的每一项 item回调函数参数3每一项的下标 index回调函数参数4整个数组 array 参数2初始值参数3原本无这里我给定义一个this 指向 Array.prototype.myReduce function (callback, initialVal) {var arr this,len arr.length,_self arguments[2] || window;for (var i 0; i len; i) {initialVal callback.apply(_self, [initialVal, arr[i], i, arr])}return initialVal;
}Array.prototype.reduceRight 每次回调函数执行就把初始值当做 prev 传入reduce 方法返回最终汇总的单个值和 reduce 的区别就是一个顺着遍历一个倒着遍历 参数1遍历数组时需要执行的回调函数 回调函数参数1初始值回调函数参数2数组的每一项 item回调函数参数3每一项的下标 index回调函数参数4整个数组 array 参数2初始值参数3原本无这里我给定义一个this 指向 Array.prototype.myReduceRight function (callback, initialVal) {var arr this,len arr.length,_self arguments[2] || window;for (var i len - 1; i 0; i--) {initialVal callback.apply(_self, [initialVal, arr[i], i, arr])}return initialVal;
}Array.prototype.push 从数组末尾追加数组元素并返回追加之后的数组长度 参数需要追加的数组元素数组元素的个数不限 Array.prototype.myPush function () {var arr this,args arguments,argsLen args.length;for (var i 0; i argsLen; i) {this[this.length] args[i]; // this.length 恰好是数组下标边界 1}return this.length;
}Array.prototype.unshift 从数组开始位置添加数组元素并返回追加之后的数组长度 参数需要添加的数组元素数组元素的个数不限 Array.prototype.myUnshift function () {var arr this,args arguments,argsLen args.length;for (var i 0; i argsLen; i) {arr.splice(i, 0, arguments[i]);}return arr.length;
}