Javascript 如何在ES6中的JSON对象中添加累积值?

Javascript 如何在ES6中的JSON对象中添加累积值?,javascript,ecmascript-6,Javascript,Ecmascript 6,我试图在JSON对象中添加累积值。当我尝试使用reduce时,它将特定键值的所有值相加。我怎样才能达到我想要的输出 示例JSON [{ "id": 28, "Title": "A", "Price": 10 }, { "id": 56, "Title": "AB", "Price": 10 }, { "

我试图在JSON对象中添加累积值。当我尝试使用
reduce
时,它将特定键值的所有值相加。我怎样才能达到我想要的输出

示例JSON

[{
  "id": 28,
  "Title": "A",
  "Price": 10
}, {
  "id": 56,
  "Title": "AB",
  "Price": 10
}, {
  "id": 89,
  "Title": "ABC",
  "Price": 10
}]
所需输出

[{
  "id": 28,
  "Title": "A",
  "Total_Spent": 10 (Sum of A)
}, {
  "id": 56,
  "Title": "AB",
  "Total_Spent": 20 (sum of A+AB)
}, {
  "id": 89,
  "Title": "ABC",
  "Total_Spent": 30 (sum of A + AB + ABC)
},
.......]

有一个变量来保存累积和;将每个原始项目映射到一个新项目,解构原始项目并构建新项目,
Total_-spend
具有累积总和的值,该值随每个项目的价格而更新

const数据=[{
“id”:28,
“标题”:“A”,
“价格”:10
}, {
“id”:56,
“头衔”:“AB”,
“价格”:10
}, {
“id”:89,
“标题”:“ABC”,
“价格”:10
}];
设cumsum=0;
const newData=data.map({id,Title,Price})=>({id,Title,Total_-spend:cumsum+=Price}));

console.log(newData)我将使用array reduce执行此任务

console.log([
{id:28,标题:“A”,价格:10},
{id:56,标题:“AB”,价格:10},
{id:89,标题:“ABC”,价格:10}
].reduce((acc,{价格,…项目},索引)=>{
加速推({
…项目,
支出总额:价格+(根据[指数-1]?。支出总额??0)
});
返回acc;
}, []));