JS遍历数组有哪些方法

1.for
这种方式是最传统的遍历方式,性能原则上是最好的
JS遍历数组有哪些方法_第1张图片
对于for循环的改良:当数组元素个数非常多时,上例中arr.length计算消耗的时间可能会变的比较长,每循环一次都需要重新计算一次数组长度,所以可以先将数组长度保存起来,然后进行循环。因此,有如下的改良方式
JS遍历数组有哪些方法_第2张图片

2.forEach()
这种遍历方式看上去比较优雅方便,要元素有元素,要下标有下标,但是它作为数组的一个方法,对于某些情况(如nodelist)是无法遍历的,再者当回调函数遇到return语句时,也不能正确执行,不知道是否是设计上的失误
在这里插入图片描述

3.for…in
这种方式一般用来遍历对象,但是确实是能够遍历数组的,只不过一般人很少会这么做,性能偏低
JS遍历数组有哪些方法_第3张图片
以上三种方式都是ES6之前的遍历方式,接下来介绍ES6新增遍历方式

4.for…of
此种遍历方式简洁方便,是我比较推荐的遍历方式,在能够执行ES6的环境下,应首选此方式
JS遍历数组有哪些方法_第4张图片

5.some()
此方法用来检测数组是否满足某种条件(由回调函数提供),如果其中有一个元素满足条件,则返回true,并不往下执行,反之则返回false
需要注意,此方法不会对空数组进行检测,也不会改变原始数组
JS遍历数组有哪些方法_第5张图片

6.every()
此方法用来检测数组中的所有元素是否都满足某个条件(由回调函数提供),如果其中有一个元素不满足条件,则返回false,并不往下执行,反之则返回true
需要注意,此方法不会对空数组进行检测,也不会改变原始数组
JS遍历数组有哪些方法_第6张图片

7.filter()
顾名思义,这个方法用来筛选数组中的元素的,此方法返回了一个新数组,且新数组中的元素都是通过了筛选条件的元素
需要注意,此方法不会对空数组进行检测,也不会改变原始数组
JS遍历数组有哪些方法_第7张图片

8.map()
此方法返回一个新数组,新数组中的所有元素都执行了回调函数里面的逻辑
需要注意,此方法不会对空数组进行检测,也不会改变原始数组
JS遍历数组有哪些方法_第8张图片

9.find()
此方法返回满足条件的数组中的第一个元素,当在测试条件返回true时,则不会往下执行,如果没有满足条件的元素,则返回undefined
需要注意,此方法不会对空数组进行检测,也不会改变原始数组
JS遍历数组有哪些方法_第9张图片

你可能感兴趣的:(JavaScript,js)