Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 对象数组中的双副本计数_Javascript_Arrays_Json - Fatal编程技术网

Javascript 对象数组中的双副本计数

Javascript 对象数组中的双副本计数,javascript,arrays,json,Javascript,Arrays,Json,我有一个数组。如何按类型、名称、大小和增量查找副本。 增加数量后,删除相同的 [ { "name": "Pizza with pepper", "imageUrl": "...", "type": 0, "size": 26, "price": "803&quo

我有一个数组。如何按类型、名称、大小和增量查找副本。 增加数量后,删除相同的

[
    {
        "name": "Pizza with pepper",
        "imageUrl": "...",
        "type": 0,
        "size": 26,
        "price": "803",
        "amount": 1
    },
    {
        "name": "Pizza with pepper",
        "imageUrl": "...",
        "type": 1,
        "size": 40,
        "price": "803",
        "amount": 1
    },
    {
        "name": "Peperoni",
        "imageUrl": "...",
        "type": 0,
        "size": 30,
        "price": "803",
        "amount": 1
    },
    {
        "name": "Peperoni",
        "imageUrl": "...",
        "type": 0,
        "size": 30,
        "price": "803",
        "amount": 1
    }
]
const数据=[
{
“名称”:“胡椒比萨”,
“imageUrl”:“…”,
“类型”:0,
“尺寸”:26,
“价格”:“803”,
“金额”:1
},
{
“名称”:“胡椒比萨”,
“imageUrl”:“…”,
“类型”:1,
“尺寸”:40,
“价格”:“803”,
“金额”:1
},
{
“姓名”:“佩佩罗尼”,
“imageUrl”:“…”,
“类型”:0,
“尺寸”:30,
“价格”:“803”,
“金额”:1
},
{
“姓名”:“佩佩罗尼”,
“imageUrl”:“…”,
“类型”:0,
“尺寸”:30,
“价格”:“803”,
“金额”:1
}
];
const merged=data.reduce((agg,item)=>{
const key=`${item.name}-${item.type}-${item.size}`;
if(agg[键]){
agg[key].amount+=item.amount;
}否则{
agg[键]=项;
}
返回agg;
}, {});
常量结果=对象值(合并);
控制台日志(结果)