本网站可以通过分类标签帮助你快速筛选出你想看的文章,记住地址:www.Facec.cc

js数组中some方法,every方法,reduce方法

every方法

数组.every()方法测试一个数组内的所有元素是否都能通过某个指定函数的测试。它返回一个布尔值。
备注: 若收到一个空数组,此方法在任何情况下都会返回 。true

arr = [1,1,0,1,1]
const result = arr.every(item => item) //resut=false
arr2 = [1,1,1,1,1]
const result = arr2.every(item => item) //resut=true

reduce方法

每一次运行 reducer 会将先前元素的计算结果作为参数传入,最后将其结果汇总为单个返回值。

第一次执行回调函数时,不存在“上一次的计算结果”。如果需要回调函数从数组索引为 0 的元素开始执行,则需要传递初始值。否则,数组索引为 0 的元素将被作为初始值 initialValue,迭代器将从第二个元素开始执行(索引为 1 而不是 0)

const arr = [
  {id:1, name: '西瓜', state:true, price:10, count:1},
  {id:1, name: '榴莲', state:true, price:80, count:2},
  {id:1, name: '草莓', state:true, price:20, count:3},
]


arr.filter(item =>item.state).reduce((amt,item)=>{
  return amt += item.price * item.count
}, 0)
//简化为
arr.filter(item =>item.state).reduce((amt,item)=> amt += item.price * item.count, 0)

# vue   js  

评论