数组的forEach和map和for方法的区别

Posted lina-xiao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组的forEach和map和for方法的区别相关的知识,希望对你有一定的参考价值。

一、定义

foreach():  从头到尾遍历数组,为每个元素调用指定的函数。

map():  将调用的数组的每个元素传递给指定的函数,并返回一个数组,他包含该函数的返回值。

传递的函数是 foreach() / map() 的第一个参数,该函数有三个参数:数组的元素+元素的索引+数组本身。

 

二、区别总结

1、map速度比foreach快;

2、map会返回一个跟原数组长度相同格式相同的新数组,且不会对原数组产生影响,foreach不会产生新数组;

3、map因为返回的是数组所以可以链式操作,foreach不能。

      推荐使用 .map() 

三、兼容性问题

1、高级浏览器(包括ie9以上)支持map和foreach方法对数组循环遍历,ie6~ie8不支持

四、

以上是关于数组的forEach和map和for方法的区别的主要内容,如果未能解决你的问题,请参考以下文章

foreach和for的区别

map和forEach的区别和用法

forEach和map和for方法的区别

ThinkPHP中foreach和volist的区别

如何形象地解释 JavaScript 中 map,foreach,reduce 间的区别

forEach, map, filter方法区别