【发布时间】:2016-03-08 16:30:35
【问题描述】:
我有以下数组,我需要计算每组值的总和。我可以在数组的 dataArr[1] 处获得每个组的第一个值的总和,但我还需要在数组中的每个组的 dataArr[2] 处获得第二个值的总和。
var dataArr = [ [
"Group One",
1,
1
],
[
"Group Four",
0,
1
],
[
"Group Three",
0,
1
],
[
"Group Three",
1,
0
],
[
"Group Four",
0,
1
],
[
"Group Two",
2,
1
],
[
"Group Four",
1,
0
],
[
"Group Three",
0,
1
],
[
"Group Three",
0,
1
],
[
"Group One",
1,
0
],
[
"Group Three",
0,
1
],
[
"Group Two",
1,
0
]
];
如何计算第二个值的总和并生成如下所示的多维数组:
[["Group One", 2, 1], ["Group Four", 1, 2], ["Group Three", 1, 4], ["Group Two", 3, 1]]
下面是我的代码灵感来自here:
var result = [];
$(dataArr).each(function() {
var key = this[0];
var value = this[1];
if (result[key]) {
result[key] += value;
} else {
result[key] = value;
}
});
【问题讨论】:
标签: javascript arrays