我有一个来自 API 调用的返回对象数组。对象结构看起来像这样..
像这样,数组可以包含n
个对象。
我要做的是..总结所有对象的selectedMapping.cost的所有值
并显示总和。
但有一个问题是成本
可能有点棘手。
它们的格式可以是 .30 或 978 等,我们必须分别假设 0.30 和 978.00。它们也可以为 null 或未定义,在这种情况下我们必须将其默认为 0.0
如何在 Angular JS 中实现求和?如何处理适当的转换并显示总和?
请您参考如下方法:
这似乎是使用reduce的好时机
const data = [
{
selectedMapping: {
cost: ".30"
}
},
{
selectedMapping: {
cost: "200"
}
},
{
selectedMapping: {
cost: ".60"
}
},
{
selectedMapping: {
cost: ".22"
}
},
{
selectedMapping: {
cost: null
}
}];
const sumCost = (data) =>
data.reduce(
(cost, entry) =>
cost + (parseFloat(entry.selectedMapping.cost) || 0),
0
)
console.log(sumCost(data))