JS中的map与forEach函数

forEach()返回值是undefined,不可以链式调用。
map()返回一个新数组,原数组不会改变。

性能测试

let arr = [1, 2, 3, 4, 5];

console.time()
let res = [];
arr.forEach(item => {
    res.push(item * 2)
})
console.timeEnd()
// 0.0341796875ms

console.time()
let ret = arr.map(item => {
    return item * 2
})
console.timeEnd()
// 0.029052734375ms

map 在循环性能你上优于forEach

你可能感兴趣的:(JS中的map与forEach函数)