相同点:
1.都是循环遍历数组(对数组每一项进行遍历)
2.每次执行函数都包含三个参数,分别为value(当前项),index(索引值),arr(原数组)
不同点
1.map()会分配内存空间存储新数组并返回(一定程度上费内存),forEach()不会返回新数据,返回undefined。
2.forEach()可更改原数组。map()可返回新数组。
代码:
- forEach (适用于不改变原数组,只是需要遍历数组获取或者存储个别数据)
1.遍历数组,对该数组没做任何的改变,且返回undefined
2.可改变原数组,且返回undefined
- map 不改变原数组,且返回一个新数组。(适用于判断原数组后,重新获取一组满足要求的数据。书写简便)