数组遍历的几种方法及用法

君哥 阅读:1814 2019-10-06 06:21:34 评论:2


数组遍历的几种方法及用法 Oracle js JavaScript游戏 第1张

一、forEach方法
forEach是最简单、最常用的数组遍历方法,它提供一个回调函数,可用于处理数组的每一个元素,默认没有返回值。

 数组遍历的几种方法及用法  Oracle js JavaScript游戏 第2张

 

 

以上是个简单的例子,计算出数组中大于等于3的元素的个数。

回调函数的参数,第一个是处于当前循环的元素,第二个是该元素下标,第三个是数组本身。三个参数均可选。

二、map方法
map,从字面上理解,是映射,即数组元素的映射。它提供一个回调函数,参数依次为处于当前循环的元素、该元素下标、数组本身,三者均可选。默认返回一个数组,这个新数组的每一个元素都是原数组元素执行了回调函数之后的返回值。

map方法不改变原数组。

 数组遍历的几种方法及用法  Oracle js JavaScript游戏 第3张

以上是一个简单的例子,把原数组的每一项乘以自身下标+1的数。

三、filter方法
filter,过滤,即对数组元素的一个条件筛选。它提供一个回调函数,参数依次为处于当前循环的元素、该元素下标、数组本身,三者均可选。默认返回一个数组,原数组的元素执行了回调函数之后返回值若为true,则会将这个元素放入返回的数组中。

filter方法不改变原数组

 数组遍历的几种方法及用法  Oracle js JavaScript游戏 第4张

以上是一个简单的例子,筛选出原数组中,自身乘以下标大于等于3的元素。

四、some、every方法
some方法和every的用法非常类似,提供一个回调函数,参数依次为处于当前循环的元素、该元素下标、数组本身,三者均可选。

数组的每一个元素都会执行回调函数,当返回值全部为true时,every方法会返回true,只要有一个为false,every方法返回false。当有一个为true时,some方法返回true,当全部为false时,every方法返回false。

some、every方法不改变原数组。

 数组遍历的几种方法及用法  Oracle js JavaScript游戏 第5张

五、reduce方法
reduce方法有两个参数,第一个参数是一个回调函数(必须),第二个参数是初始值(可选)。回调函数有四个参数,依次为本轮循环的累计值、当前循环的元素(必须),该元素的下标(可选),数组本身(可选)。

reduce方法,会让数组的每一个元素都执行一次回调函数,并将上一次循环时回调函数的返回值作为下一次循环的初始值,最后将这个结果返回。

如果没有初始值,则reduce会将数组的第一个元素作为循环开始的初始值,第二个元素开始执行回调函数。

最常用、最简单的场景,是数组元素的累加、累乘。

 数组遍历的几种方法及用法  Oracle js JavaScript游戏 第6张

reduce方法不改变原数组

六、for of方法
es6新增了interator接口的概念,目的是对于所有数据结构提供一种统一的访问机制,这种访问机制就是for of。

即:所有有interator接口的数据,都能用for of遍历。常见的包括数组、类数组、Set、Map等都有interator接口。

 数组遍历的几种方法及用法  Oracle js JavaScript游戏 第7张

如果想用for of的方法遍历数组,又想用Index,可以用for of遍历arr.entries()

 数组遍历的几种方法及用法  Oracle js JavaScript游戏 第8张

 


本文链接:http://yanjun202.com/post/35.html 

分享到:
可以去百度分享获取分享代码输入这里。
发表评论
  • 浅***妈(匿名 发表于 刚刚 回复

    学到了呀君哥,好好小本子记下来,下次面试可能就问到我这个问题了

搜索
排行榜
关注我们

扫一扫关注我们,了解最新精彩内容