技术文章 > Web开发 >  JavaScript > 正文

js中forEach方法与map方法区别详解

宋宋大人

小编在介绍JavaScript数组遍历时提过forEach方法map方法,同样是遍历方法,这二者有什么区别呢?最大的区别就是forEach()方法没有返回值,只是遍历数组;map()方法有返回值,返回值用变量接收。forEach()方法适用于打印数组内容map()方法适用于需要更改数组的场景。forEach()方法使用性能比map()方法性能好。具体内容请看本文。

1、返回值

forEach()方法没有返回值,只是遍历数组。

map()方法有返回值,返回值用变量接收,会返回数组的每一项,但不改变原数组,相当于返回原数组的一个修改过的副本。

2、改变原数组

forEach()方法不对原来数组进行修改,但是可以自己通过数组索引来修改原来的数组。

map()方法不会改变原始数组不会对空数组进行检测。

3、使用场景

forEach()方法适用于打印数组内容

map()方法适用于需要更改数组的场景

4、使用性能:forEach()方法性能比map()方法性能好。

forEach()方法

var arr = [{name: 'llx',age: 18}];
arr.forEach((item,index)=>{
  item.age += 1
})
console.log(arr)
// [{name: 'llx',age: 19}]

map()方法

var arr = [{key:1,value:1},{key:2,value:2},{key:3,value:3}]
arr.map(item=>{
  return item.value+1
})
// [2,3,4]

以上就是js中forEach方法与map方法区别详解,希望能帮助你理解区别~

免费视频教程
本文原创发布python学习网,转载请注明出处,感谢您的尊重!
相关文章
 Python中PIL库有何用法?
 python中缺少module怎么办?
 python中cffi模块如何使用?
 python中sys.stdout.write() 怎么用?
 python中sys模块是什么?
 如何使用python实现图片处理?
相关视频章节
 Python蟒蛇绘制代码分析
 Python概述
 解决提示“‘python’不是内部或外外部命令
 python代码缩进
 《Python程序设计》课程导论
视频教程分类