计算对象数组中某个属性值的出现次数

语法

  1. import { countObjFrequency } from 'warbler-js'
  2. const result = countObjFrequency(arr, key, value)

参数

  • arr (Array) : 需要统计属性值出现次数的数组。
  • key (String) : 需要统计出现次数的 key
  • value (String | Number) : 需要统计出现次数的 value

返回值

Number : 目标属性值的出现次数。

源码

  1. const countObjFrequency = (arr, key, value) => arr.reduce((pre, cur) => (cur[key] === value ? pre + 1 : pre + 0), 0);

例子

  1. import { countObjFrequency } from 'warbler-js'
  2. const fruits = [
  3. { name: 'Bananas', quantity: 5 },
  4. { name: 'Apples', quantity: 10 },
  5. { name: 'Bananas', quantity: 5 },
  6. { name: 'Bananas', quantity: 5 },
  7. { name: 'Grapes', quantity: 2 },
  8. { name: 'Bananas', quantity: 5 },
  9. ];
  10. const result = countObjFrequency(fruits, 'name', 'Bananas');
  11. console.log(result) //=> 4