[英]How to add two object 2d array values in javaScript
这是问题
var x = [
{amount:2,concentration:10},
{amount:1,concentration:8},
{amount:6,concentration:15}
];
预期 output:
y = [{amount:9, concentration:33}];
您可以使用reduce的初始值等于数组的第一个元素
const x = [ { amount: 2, concentration: 10 }, { amount: 1, concentration: 8 }, { amount: 6, concentration: 15 }, ]; const result = x.reduce((acc, val) => ({ amount: acc.amount + val.amount, concentration: acc.concentration + val.concentration, })); console.log(result); const y = [result]; console.log(y);
Ciao,这里的工作示例:
var x =[ {amount:2,concentration:10}, {amount:1,concentration:8}, {amount:6,concentration:15} ]; var result = {}; result.amount = x.map(item => item.amount).reduce((prev, next) => prev + next); result.concentration = x.map(item => item.concentration).reduce((prev, next) => prev + next); console.log([result]);
或者你可以使用简单的 for 循环
const x =[ {amount:2,concentration:10}, {amount:1,concentration:8}, {amount:6,concentration:15} ]; let y = [{ amount: 0, concentration: 0 }]; for(let i = 0; i < x.length; i++) { y[0].amount += x[i].amount; y[0].concentration += x[i].concentration; } console.log(y)
简单的答案,但可能对许多人有用。
var x =[
{amount:2,concentration:10},
{amount:1,concentration:8},
{amount:6,concentration:15}
];
let totalAmount = 0;
let totalConcentration = 0;
x.map(xx => {
totalAmount += xx.amount;
totalConcentration += xx.concentration;
});
console.log({amount: totalAmount, concentration: totalConcentration});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.