js Array数组常用的5个方法

  • A+
所属分类:JavaScript

es6 时代来临了,不知道es5 你熟知了吗?

在此介绍一个我常用到的5个方法,万恶的ie9一下并不支持,需要做兼容慎用

1) indexOf

indexOf()方法返回在该数组中第一个找到的元素位置,如果它不存在则返回-1。

eg:

当我们不使用它的时候,是这个样子的

很明显代码量明显增加了。

有优点就有缺点,那就是万恶的ie了,ie9一下不支持此方法。

 

2) filter

该filter()方法创建一个新的匹配过滤条件的数组。

eg:

对比一下

3) forEach()

forEach为每个元素执行对应的方法

eg:

对比一下

forEach是用来替换for循环的

 

4) map()

map()对数组的每个元素进行一定操作(映射)后,会返回一个新的数组

eg:

对比一下

map()是处理服务器返回数据时是一个非常实用的函数。

 

5) reduce()

reduce()可以实现一个累加器的功能,将数组的每个值(从左到右)将其降低到一个值。

说实话刚开始理解这句话有点难度,它太抽象了。

场景: 统计一个数组中有多少个不重复的单词

对比一下

让我先解释一下我自己对reduce的理解。reduce(callback, initialValue)会传入两个变量。回调函数(callback)和初始值(initialValue)。假设函数它有个传入参数,prev和next,index和array。prev和next你是必须要了解的。

一般来讲prev是从数组中第一个元素开始的,next是第二个元素。但是当你传入初始值(initialValue)后,第一个prev将是initivalValue,next将是数组中的第一个元素。

 

weinxin
我的微信公众号
我的微信公众号扫一扫

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:1   其中:访客  1   博主  0

    • avatar 在线买essay 2

      看起来好复杂,但是还是赞