**
ES5中数组的方法
**
ES5中数组的方法都有:
indexOf、forEach、map、every、some、filter、reduce
一、indexOf方法
- 查找数组内指定元素的位置,查到第一个值时返回其索引,没查到返回-1
let arr = [1,2,3,4];
console.log(arr.indexOf(3)); // 2
- .lastIndexOf(element)为倒序查找
跟indexOf()一样,只是查找起始点不同,indexOf是从第一个开始查找,
lastIndexOf()是从最后一个查找,如果存在,返回下标,如果不存在返回-1
二、forEach方法
- 跟之前的for()循环一样,只是forEach更灵活
- 遍历当前数组,参数为一个回调函数,回调有三个值:
1、当前元素
2、当前元素索引值
3、整个数组 - .forEach(function(e,index,arr){});
三、map方法
- map()方法返回一个被操作后的新数组,不会改变原数组
- map()一般配合return使用,如果没有return那跟forEach一样
- .map(function(element))
四、some方法
- 判断数组内是否有指定元素,如果只要有一个则返回true,如果一个都没有则返回false
- .some(function(element,index,array){});
五、filter方法
- 过滤,返回数组的一个子集
- 回调函数用来逻辑判断当前值是否加入到返回数组,若为true则加入
- .filter(function(element){});
六、reduce方法
- 遍历数组,调用回调函数,将数组元素合成一个值返回结果,其中value为设定的初始值(可选)
- .reduce(function(v1, v2), value)