map:干啥用的?
map的基本功能是遍历一个数组,并返回一个新数组,不改变原有数组。
map方法接收两个参数,第一个参数是一个函数,第二个参数是改变this指向的值。
回调函数接收三个参数,分别为数组每一项、数组的下标以及数组本身。
Array.prototype.myMap=function(fn){
let res = [];
//获取第二个参数
let ctx = arguments[1]||window;
//循环遍历处理数组
for(let i=0;i<this.length;i++){
res.push(fn.call(ctx,this[i],i,this));
}
//返回新数组
return res;
}
map函数用的还是相当频繁的,还是要常些常用才能更加熟练