map()函数理解
map函数是Array对象的一个方法,它可以返回一个新数组,不修改原来的数组。
array.map((item,index,arr)=>{})
map回调函数的三个参数,item是必须的,代表数组的每个元素,index可选,元素的下标值,arr可选,代表元素所属于的数组对象。每个元素都要执行回调函数的内容,返回一个新的数组。
比如:var array=[1,2,3] var new_array=array.map((item,index)=>{ return item*2 })
new_array=[2,4,6]
手写map函数
var arr=[1,2,3] function my_map(arr,mapCallback){ // 检查参数是否正确 if(!Array.isArray(arr)||!array.length||typeof mapCallback!=='function'){ return [] }else{ let result=[] for(let i=0,len=arr.length;i<len;i++){ result.push(mapCallback(arr[i],i,arr)) } return result } } my_map(arr,(item)=>{ console.log(item)//1 2 3 })
原文链接: