手写能加深对map的理解,有时候懂了却不一定写得出,希望大家多多动手,没事别打那么多嘴炮!要做行动的巨人!
map可以传进一个回调函数,返回一个值。map运用
var arr = [1, 2, 3, 4]
var array = arr.map((item, index) => {
return item * 2
})
console.log(array);
手写
var arr = [1, 2, 3, 4];
function map(arr, mapCallback) {
// 1:检查参数是否正确
if (!Array.isArray(arr) || !arr.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
}
}
var sb = map(arr, (item) => {
return item * 2
})
console.log(sb);