1. forEach()
forEach()方法需要回调函数作为参数
* - 数组中有几个元素函数就会执行几次,每次执行时,浏览器会将遍历到的元素
* 以实参的形式传递进来,我们可以来定义形参,来读取这些内容
* - 浏览器会在回调函数中传递三个参数:
* 第一个参数,就是当前正在遍历的元素
* 第二个参数,就是当前正在遍历的元素的索引
* 第三个参数,就是正在遍历的数组
*
2. map()
map()方法和forEach()一样可以遍历数组,需要一个回调函数作为参数。
可以对数组的每一项进行运算操作或者复制再赋值给新的数组。
注意:map方法不会对空数组进行检测
注意:map方法不会改变原数组
如果是通过map进行赋值数组,是属于深拷贝
3. filter()
filter(): 可以遍历数组,需要一个回调函数作为参数,该回调函数必须返回Boolean值
若返回true,函数内部会自动将这次回调的n加入到新的数组,这个新的数组是函数内部自动生成的,我们let一个数组来接收
若返回false,函数内部会过滤掉这次的value,不加入新的数组
4.reduce()
reduce(): 可以遍历数组,对数组中的所有内容进行累加。需要一个回调函数作为参数。
回调函数中要传入两个参数:
1. 上一次回调函数返回的值
2. 当前正在遍历的value
5.every()
every(): 同样可以遍历数组。需要回调函数作为参数,如果每个回调函数都返回true,那么every方法的返回值为true
只要有一个回调函数返回false,那么不再执行循环,直接返回false。
注意:如果是一个空数组调用了every(),返回值就是true,不会改变原始数组
6. some()
some方法:会依次执行数组的每个元素:
- 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
- 如果没有满足条件的元素,则返回false。
7. find()
find方法:找出第一个满足条件返回true的元素,并返回该元素
如果没有符合条件的元素,返回undefined
8. findIndex()
findIndex方法:找出第一个满足条件返回true的元素下标并返回该下标,
如果没有符合条件的元素,返回-1