map()和forEach()

一、forEach()

forEach()方法中的function回调支持三个参数,第一个是遍历的内容,第二个是索引,第三个是数组本身。即

[].forEach(function(val,index,arr){
  // ...
})

二、map()

这里的map是“映射”的意思,基本用法跟forEach类似,但是可以把原数组映射成一个新的数组。比如:

let data=[1,2,3,4];

var squres=data.map(function(value,index,arr){
  console.log(arr[index]===value); // true
  return value * value
});
console.log(squares); // [1,9,16]

支持return返回值,return的是啥,相当于把数组的这一项变成啥。

三、总结

1、map速度比forEach快。
2、map会返回一个新数组,不会对原数组产生影响;而forEach不会产生新的数组,只会返回endefined。
3、map因为返回数组,所以可以进行链式操作。
4、map里可以用return,forEach不能;forEach不能用break。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容