我有一个像这样的数组数组:
var array = [
[ '2','Yes'],
[ '2','Yes'],
[ '2','Yes'],
[ '3','Yes'],
[ '3','Yes'],
[ '4','Yes'],
]
上述数组中的ID(2、3和4)来自服务器响应,是动态获取的。我需要计算特定ID的条目数量。但我无法想出如何循环遍历此数组以获得期望的输出。期望的输出为:
[{"ID" : "4", Count : "1"},{"ID" : "3", Count : "2"},{"ID" : "2",Count : "3"}]
请注意,输出结果按计数的升序排列。
这是我的尝试:
var temp1 = [];
var temp2 = [];
var temp3 = [];
for(var i = 0; i < array.length; ++i){
if(array[i][0] == 2){
temp1.push(array[i])
}
if(array[i][0] == 1){
temp2.push(array[i])
}
if(array[i][0] == 3){
temp3.push(array[i])
}
}
var output = [{
ID: "2",
Count: temp1.length,
},
{
ID: "1",
Count: temp2.length,
},
{
ID: "3",
Count: temp3.length
}]
console.log(output)
如果数据是动态的,我相信我的做法不是最好的方法。 如何更好地处理它?