javascript - 使用 javascript 组合 JSON 中的常用属性
问题描述
我想在我的 JSON 对象中添加一个公共属性。这是示例 JSON 对象
results = [
{
MKTUNITID: 'India',
TOTCOUNT: 20,
},
{
MKTUNITID: 'India',
TOTCOUNT: 4,
},
{
MKTUNITID: 'China',
TOTCOUNT: 8,
},
{
MKTUNITID: 'India',
TOTCOUNT: 6,
},
{
MKTUNITID: 'Japan',
TOTCOUNT: 2,
},
{
MKTUNITID: 'Japan',
TOTCOUNT: 4,
},
{
MKTUNITID: 'China',
TOTCOUNT: 2,
},
];
预期的示例结果是添加 TOTCOUNT 字段以重复 MKTUNIT 属性,如下所示:
results = [
{
MKTUNITID: 'India',
TOTCOUNT: 30,
},
{
MKTUNITID: 'China',
TOTCOUNT: 10,
},
{
MKTUNITID: 'Japan',
TOTCOUNT: 6,
},
];
解决方案
var arr = [{
"MKTUNITID": "India",
"TOTCOUNT": 20,
}, {
"MKTUNITID": "India",
"TOTCOUNT": 4,
}, {
"MKTUNITID": "China",
"TOTCOUNT": 8,
}, {
"MKTUNITID": "India",
"TOTCOUNT": 6,
}, {
"MKTUNITID": "Japan",
"TOTCOUNT": 2,
}, {
"MKTUNITID": "Japan",
"TOTCOUNT": 4,
}, {
"MKTUNITID": "China",
"TOTCOUNT": 2,
}, ];
var x = arr.reduce((result, {
MKTUNITID,
TOTCOUNT
}) => {
result[MKTUNITID] = result[MKTUNITID] ? result[MKTUNITID] + TOTCOUNT : TOTCOUNT;
return result;
}, {});
let result = Object.keys(x).map(d => ({
MKTUNITID: d,
TOTCOUNT: x[d]
}));
console.log(result)
推荐阅读
- python - @property 在 Django 中的 models.py 中有两个函数
- git - 拉动时出现 Git 致命错误,无法锁定引用,无法解析引用,引用已损坏
- javascript - 有没有办法限制来自 youtube api 的查询数量?
- javascript - 有没有办法通过特定值获取元素
- python - 如何多次运行多个脚本
- reactjs - React mapDispatchToProps 对象操作不起作用
- java - 如何在事务中使用具有并行性的临时表?
- docker - 将 docker run 翻译成子组件
- c++ - 在 C++ 中对消息进行逻辑错误加密
- r - 如何根据条件添加具有累进数字的列