数组的遍历

170 阅读1分钟

数组的遍历

① filter——过滤

返回新数组,不对原数组进行操作
let arr=[1,2,3,4,5,6,7,8];
let newArr=arr.filter((item)=>{
	return item>4;
})
console.log(newArr);//[5,6,7,8]

②some、every

some:一真即真;every:一假即假;
let arr=[1,2,3,4,5];
let someFlag=arr.some(function(item){
    return item>4;
})
console.log(someFlag);//true

let everyFlag=arr.every(function(item){
	return item>5;
})
console.log(everyFlag);//false

③map 映射

一般用于修改某个数组的值
let arr=[1,2,3,4];
let newArr=arr.map(function(item){
    return item+1;
})
console.log(newArr);//[2,3,4,5] 

④reduce

let arr=[1,3,2,4,3,2,1,8,6];
// 最大值
let maxNum=arr.reduce((prev,cur,index,arr)=>{
    return Math.max(prev,cur);
})
// 求和
let totle=arr.reduce((prev,cur,index,arr)=>{
    return prev+cur;
})
// 去重
let newArr=arr.reduce((prev,cur,index,arr)=>{
    prev.indexOf(cur)===-1?prev.push(cur):prev;
    return prev;
},[])
console.log(maxNum);//8
console.log(totle);//30
console.log(newArr);// [1, 3, 2, 4, 8, 6]