map的参数
1.是callbackFn,数组中每个元素执行的回调函数
2.是ins,回调函数的作用域,执行 callbackFn 时用作 this 的值。
callbackF的参数
1.item,数组当前元素
2.index , 数组当前下标
3.arr,当前数组
Array.prototype._map = function (callbackFn, ins) {
if(typeof callbackFn !== 'function'){
throw new TypeError(callbackFn + 'is not function');
}
const arr = this;
const len = arr.length;
const result = new Array(len);
for (let i = 0; i < len; i++) {
result[i] = callbackFn.call(ins, arr[i], i, arr);
}
// 返回map结果
return result;
};