如何将由jquery中的某个变量分组的价格相加

时间:2015-07-29 10:16:14

标签: javascript jquery arrays

图像中的第一个列表显示了循环后我取得的成就。现在我想要“groupid”分组的“pay”总和,如第二个列表所示。 我只需要将第二个列表保存在数据库中,但无法使用JQuery实现它。

如何使用jquery获取按组织分组的总和?

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以遍历数组并将它们聚合到另一个对象:

var input = [
    { oId: 1, pay: 10 }, 
    { oId: 1, pay: 10 }, 
    { oId: 2, pay: 20 }, 
    { oId: 2, pay: 20 }, 
    { oId: 3, pay: 30 }
];

var result = {} ;
for (var i = 0; i < input.length; i++) {
    var rec = input[i];

    if(result.hasOwnProperty(rec.oId))
        result[rec.oId] += rec.pay;
    else
        result[rec.oId] = rec.pay;
}

return result;