javascript - 如何计算和记录对象数组中的重复次数
问题描述
我有一个数组,我需要计算并记录每个项目重复的次数。例如下面的数组:
let arr = [
{item:"pen"},
{item:"book"},
{item:"pen"}
];
这应该返回:
let arr = [
{item:"pen", found: 2},
{item:"book", found: 1},
{item:"pen", found: 2}
]
属性“found”应指示项目在数组中出现的次数。
解决方案
你可以使用两个循环一个迭代一个过滤器,即
arr.forEach(item => {
item.found = arr.filter(filterObject => filterObject.item == item.item).length;
})
推荐阅读
- arduino-uno - 三轮机器人不使用语音命令向后或向左移动
- javascript - Javascript 混淆和模态框
- dhis-2 - DHIS2-live 在 Windows 中无法正常工作
- mysql - MySQL LEFT JOIN 与 GROUP BY 和聚合运算符阻塞
- node.js - Node.js 使用 Promise.all 来返回异步调用?
- ios - 如何获取 iOS 应用程序,以便我可以通过 whatsapp 或任何其他信使共享它
- c# - 有没有办法结合foreach循环
- haskell - 如何使用 Haddock 记录类型类约束?
- django - 在管理员中上传图像时,出现错误:不允许文件扩展名 'jpg'。允许的扩展名是:''
- python - 从 pycharm 运行 dev_appserver.py 时出现 ImportError