gpt4 book ai didi

javascript - 主干集合 : Retrieve distinct values of a collection and sum the distinct values

转载 作者:行者123 更新时间:2023-11-29 18:17:33 25 4
gpt4 key购买 nike

与此 question 相关

给出这个“样本收集数据”:

[{brand:'audi', amount: '100.16', id:'1234'},
{brand:'audi', amount: '67.84', id:'3456'},
{brand:'bmw', amount: '80.70', id:'3456'}]

我如何添加集合中不同品牌的数量?

并获取此数据:

[{brand:'audi', amount: '168.00'},
{brand:'bmw', amount: '80.70'}]

在此先感谢大家!

最佳答案

这是一个相当标准的 reduce这只是简单的 JavaScript:

var o = data.reduce(function(m, e) {
// There are lots of ways to do this depending on what sorts
// of things are going to be values in `m`, we're expecting
// the values to be non-zero numbers so a simple `!` is fine.
if(!m[e.brand])
m[e.brand] = 0;
m[e.brand] += parseFloat(e.amount);
return m;
}, { });

如果您担心石器时代的浏览器,请使用 _(data).reduce 或一个简单的循环:

var o = { }, i;
for(i = 0; i < data.length; ++i) {
if(!o[data[i].brand])
o[data[i].brand] = 0;
o[data[i].brand] += parseFloat(data[i].amount]);
}

只要浮点值都很小并且像它们一样靠得很近,您就应该非常安全地使用浮点值。

关于javascript - 主干集合 : Retrieve distinct values of a collection and sum the distinct values,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21744935/

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