相同点
- 只能遍历数组
- 都是循环遍历数组中的每一项
- 每一次执行匿名函数都支持三个参数,数组中的当前项item,索引index,原始数组input
- 匿名函数中的this都是指window
区别
map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
map()方法按照原始数组元素顺序依次处理元素。
map()不会对空数组进行检测,map()不会改变原始数组。
forEach()方法不会返回执行结果,而是undefined。forEach()会修改原来的数组
map()里可以用return,而forEach里用return不起作用,forEach不能用break,会直接报错。