数组之——map \ foreach

103 阅读1分钟

map和forEach 的粗比较

相同

  • 对空数组都是不会执行回调函数的
  • 都能够对数组进行循环

区别

  • map() 不会改变原始数组,并且会返回一个新的数组
  • forEach() 会改变原始数组,返回值为undefined

总结

  • map比foreach执行的速度更快,且不会改变源数据
const a =[1,2,3,4]; 
const b = a.map(item => { 
    if(item > 2) return; 
    return item 
})
// b [1,2,undefined,undefined]
const c = a.forEach(item => { 
    if(item > 2) return; 
    return item 
}) 
// c undefined