gpt4 book ai didi

javascript - 求 angular2 中同名对象数组的值之和

转载 作者:行者123 更新时间:2023-12-01 01:53:07 29 4
gpt4 key购买 nike

我有一个要求,我需要找到具有相同名称的不同对象中 amt 值的总和。下面是代码片段

traveler = [
{ description: 'Senior', Amount: 50},
{ description: 'Senior', Amount: 50},
{ description: 'Adult', Amount: 75},
{ description: 'Child', Amount: 35},
{ description: 'Infant', Amount: 25 },
];

这里我想计算具有相同描述的不同对象中的金额总和。例如:对象 0 和 1 包含相同的描述“高级”,因此总金额为 100

如何在 Angular2 中实现这一点?

我应该使用内部for循环还是有更好的方法?请帮助我

最佳答案

您可以选择 Map用于收集值并使用分组结果渲染对象数组。

var traveler = [{ description: 'Senior', amount: 50 }, { description: 'Senior', amount: 50 }, { description: 'Adult', amount: 75 }, { description: 'Child', amount: 35 },  { description: 'Infant', amount: 25 }],
grouped = Array.from(
traveler.reduce(
(m, { description, amount }) => m.set(description, (m.get(description) || 0) + amount),
new Map
).entries(),
([description, amount]) => ({ description, amount })
);

console.log(grouped);
.as-console-wrapper { max-height: 100% !important; top: 0; }

关于javascript - 求 angular2 中同名对象数组的值之和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51267205/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com