我遇到了分组问题,然后添加了一些从AJAX查询返回的JSON中获得的值。
数据回传如下:
0: Object
count: 12
grp: 1
id: "1"
1: Object
count: 21
grp: 2
id: "3"
2: Object
count: 48
grp: 3
id: "4"
3: Object
count: 51
grp: 2
id: "5"
对于grp
,有五种可能的选项(组):1,2,3,4,5。我想要做的是将每个特定组的所有count
值相加。也就是说,将所有grp
1 count
值加在一起,将所有grp
2 count
值加在一起,依此类推。
最好的方法是什么?我无法找出each
或任何相当有用的东西。
答案 0 :(得分:3)
var counts = {};
$.each(data, function(index, item){
var sum = counts[item.grp] || 0;
counts[item.grp] = sum + item.count;
});
console.log(counts);
# {1: 12, 2: 72, 3: 48}