20210508数组的操作方法

75 阅读1分钟
var arr =[1,2,3,4,5,6];
var arrJson=[
  {
    name:'小花',
    age:12,
    score:90
  },
  {
    name:'小明',
    age:11,
    score:60
  },
  {
    name:'小东',
    age:15,
    score:100
  }
]

forEach用法

//forEach用法
arr.forEach(element => {
  console.log(element)
});

every用法

/*
every用法--必须所有项都满足条件才会返回true
*item循环的每个参数
*index下标
*array数组本身
返回布尔值 true 或者 false
*/
const result = arr.every( (item,index,array) => {
   console.log(item);
   console.log(index)
   console.log(array);
   return item<5 //返回一个布尔值
})
console.log('result'+result); //false

some用法

/*
some用法--有些项满足条件就返回true
*item循环的每个参数
*index下标
*array数组本身
返回布尔值 true 或者 false
*/

const result1= arr.some((item,index,array) => {
   console.log(item);
   console.log(index)
   console.log(array);
   return item>2 //返回一个布尔值
})
console.log('result1'+result1);  //true

filter用法

/*
*filter用法 接受三个参数 item index array
*item循环的每个参数
*index下标
*array数组本身
*返回一个符合条件的数组
*/
const result2= arr.filter((item,index,array) => {
    return item>3  //返回的是一个数组
})
console.log('result2===='+result2) //[4,5,6]

reduce用法

//reduce用法 arr.reduce(callback,[initialValue])
//callback接收四个参数 prev cur index arr
//initialValue可选参数
const sum = arr.reduce((prev,cur,index,arr) => {
 console.log(prev,cur,index);
 return prev+cur
},-10)
const sum1 = arr.reduce((prev,cur,index,arr) => {
 console.log(prev,cur,index);
 return prev+cur
})
console.log(sum); //11
console.log(sum1); //21
const total=arrJson.reduce((prev,cur,index,arr)=>{
    return cur.score+prev
},0)
console.log(total) //250