javascript - 如何在对象数组中找到许多总和
问题描述
我有一个大数组,为了问题的目的我已经简化了
[
{"item1": 3, "item40": 2},
{"item1": 4, "item40": 8}
]
我想以这个结束,这是对象数组中每个相似属性的总和。我尝试了很多。做一个 forEach 里面有一个 forIn。但我被困住了。请帮忙 :)
[5, 12]
解决方案
您可以使用Array.prototype.map()
withArray.prototype.reduce()
来获得结果。使用 map 遍历数组,使用 map 获取对象值Object.values()
,最后使用 reduce 求和。
const data = [
{ item1: 3, item40: 2 },
{ item1: 4, item40: 8 },
];
const ret = data.map((x) => Object.values(x).reduce((p, c) => p + c, 0));
console.log(ret);
推荐阅读
- google-apps-script - 谷歌表格:是否可以保护一系列单元格,使其只能使用脚本进行修改?
- c++ - 如何使用重载运算符>>读取文件?
- python - Huggingface 变压器启动
- r - 循环中 lm() 的字符串输入问题
- arrays - 检查数组是否在 C 中镜像
- ios - 具有依赖于其他参数值的动态选项的小部件 IntentHandler 参数
- c# - 如何通过按下按钮更改特定数据网格的颜色
- drupal - 内容类型中的 Drupal 8 迁移字段未显示在视图模块中
- kivy - 简单代码kivy登录页面显示黑屏
- wordpress - 如何修复 elementor 更新导致服务器错误