function map (arr,callback){
//检测传入的数组是不是数组,数组长度是否为0,传入的回调函数是不是函数,如果不是返会空
if(!Array.isArray(arr) || !arr.length || typeof callback !=='function'){
return []
}else {
let result = []
//循环对数组中的每个值调用函数
for ( let i=0 ,len =arr.length;i<len;i++){
result.push(callback(arr[i],i,arr))
}
return result
}
}
下面实践一下
map(arr, (item)=>{
console.log(item);
})
//1
//2
//3
!!!内存泄漏的几种情况 1.全局变量 2.没被清除的定时器 3.闭包 4.失去引用的dom