概述
forEach()方法:
针对每一个元素执行提供的函数。
map()方法:
创建一个新的数组,其中每一个元素由调用数组中的每一个元素执行提供的函数得来。
相同点:
1.都是循环遍历数组中的每一项
2.每次执行匿名函数都支持三个参数,参数分别为item(当前每一项),index(索引值),arr(原数组)
3.匿名函数中的this都是指向window
4.只能遍历数组
区别
forEach()方法不会返回执行结果,而是undefined。也就是说,forEach()会修改原来的数组。而map()方法会得到一个新的数组并返回。
执行速度对比
forEach()的执行速度 < map()的执行速度
如何使用
forEach适合不打算改变数据,而只是想用数据做一些事情 - 比如存数据库或打印
map()适合 需要改变数据值的时候。 不仅在于它更快,而且返回一个新的数组。另:
在于可以使用复合(composition)(map()、filter()、reduce()等组合使用)
总结
forEach()可以做到的东西,map()也同样可以。反过来也是如此。
map()会分配内存空间存储新数组并返回,forEach()不会返回数据。
forEach()允许callback更改原始数组的元素。map()返回新的数组。
最后
以上就是开放乐曲为你收集整理的JS——Map和ForEach的全部内容,希望文章能够帮你解决JS——Map和ForEach所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复