数组的方法

128 阅读1分钟
// 数组的方法
// forEach => 遍历
// filter => 遍历 + 过滤
// map => 遍历 + 映射(个数不变)
// some => 遍历 + 只要有一个满足条件 true/false
// every => 遍历 + 所有的满足条件 true/false
这些方法都是一些我们常用的方法,也是非常重要的方法
// 准备好一个数据
let arr = [  { id: 1, name: 'zs', done: false },  { id: 2, name: 'ls', done: false },  { id: 3, name: 'ww', done: false },]

 第一个数组遍历的方法 :  forEach => 相当于 之前for
 格式 : 数组.forEach(()=>{})
 返回值 : 无
==> 

arr.forEach( (v, i) => {
  console.log(v, i)
})
第二个数组遍历的方法 : map => 映射 (映射规则 1-1)
回调 : 有return 新值
返回值 : 返回一个长度一样的新数组
// arr = arr.map((v) => {//   return {//     id: v.id,//     name: v.name + 666,//   }// })// arr = arr.map((v) => v.name + 666)// console.log(arr)
第三个数组方法 : filter => 过滤
需求 : 过滤id=2
回调 return 条件
// arr = arr.filter((v) => {//   return v.id == 2// })// console.log(arr)// 需求 : 删除 id = 2// arr = arr.filter((v) => v.id != 2)
第四个数组方法 : some => 一些 => 判断数组里面是否有一个满足条件的
如果有(1+) => true 否则:false
需求 : 判断 done 是否有一个为 true
回调 return 条件
let b = arr.some((v) => {  return v.done === true})console.log(b) // false
第五个数组的方法 : every => 每一个 => 判断是否所有都满足条件
如果都满足 => true 否则:false
let b = arr.every((v) => v.done)
// 需求 : 判断是否数组里面所有的done 都为true// let b = arr.every((v) => v.done)// console.log(b)// 需求 : 判断是否数组里面所有的done 都为falselet b = arr.every((v) => !v.done)console.log(b)