作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个对象,其中有多个对象,每个对象都有一个包含 0..n 个对象的对象数组。主要对象看起来像这样:
{
obj1: [{obj1.1}, {obj1.2}, {obj1.3}],
obj2: [{obj2.1}]
obj3: [{obj3.1}, {obj3.2}]
}
每个对象(obj1、obj2 和 obj3)在一个对象数组中包含一组公共(public)对象。例如。 obj1 在对象数组(obj1.1、obj1.2 和 obj1.3)中有一组对象,所有这些对象都具有将它们组合在一起的共同属性。
我现在希望能够分别遍历每个对象数组中的每个对象,以便对每个对象数组的特定属性(每个对象都具有)求和。
我已使用 Object.keys
遍历每个对象数组,但我仍然无法为每个对象数组获取单独的求和值。
例如:
{
obj1: [
0: { price: 10 }
1: { price: 10 }
2: { price: 10 }
],
obj2: [
0: { price: 10 }
],
obj3: [
0: { price: 10 }
1: { price: 10 }
]
}
我希望能够对每个单独的对象数组的属性 price
求和。因此,对于 obj1
,我的总金额应该是 30。对于 obj2
,我的总金额应该是 10,最后对于 obj3
,我应该总金额为 20。
我可以使用 Object.keys
遍历每个对象数组,但是就目前而言,当遍历每个对象数组中的每个单独元素时(使用 foreach),我只是总结一个最终的所有三个对象数组中所有对象的数量。 IE。我得到的总金额为 60。
var total = 0;
for (var key of Object.keys(result)) {
result[key].forEach(element => {
total += element.Price;
});
};
console.log(total);
我可以使用什么来获取每个对象数组的三个单独总和金额?
最佳答案
function sum(prices)
{
let total = 0;
prices.forEach((entry) => total += entry.price);
return total;
}
console.log(sum(obj1));
console.log(sum(obj2));
console.log(sum(obj3));
为什么又这么难?您拥有正确的代码,只需要打破现状。
关于javascript - 我如何为单独的对象数组对每个对象的属性求和?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72678157/
我是一名优秀的程序员,十分优秀!