数组的遍历方法
filter()
filter()函数的意思是过滤一个数组,返回的值,是过滤后符合条件的值。
//声明一个数组
var arr = [1,2,3,4,11,12];
//返回值小于10
var result = arr.filter((item,index,array)=>{
console.log(item); //返回每一项的值 如:1,2,3,4,11,12
console.log(index); //返回索引
console.log(array); //返回的是arr的内容
return item < 10;
})
console.log(result); //1,2,3,4
map()
map()函数对一个数组的每一项进行自定义的操作,返回一个完整的数组。
var arr2= [1,2,3,4,11,12];
//数组的每一项翻倍
var res2 = arr2.map((item,index)=>{
return item*2;
})
console.log(res2); //[2,4,6,8,22,24]
forEach()
forEach()函数是一个遍历函数,把数组的每一项进行遍历。(重点项目中经常使用)
var arr3 = [1,2,3,4];
arr3.forEach((item, index, array)=>{
console.log(item);
console.log(index);
})
数组去重的方法
把一个数组先去重,然后再排序的操作
var arr = [1,2,2,3,7,6];
var res = arr.filter((item, index, array)=>{
//比如遍历到索引为三的 它的array.indexOf(2) =1 ,它的index = 2 所以他是重复的
return array.indexOf(item) == index;
})
//创建一个排序方法
function compare(a,b){
return a-b;
}
res.sort(compare); //[1,2,3,6,7]