jquery中的数组元素计数

时间:2014-03-14 09:56:45

标签: jquery

我有一个类似

的数组
[
   {date:'1/8/14',code:'AV-502'},
   {date:'1/8/14',code:'AV-501'},
   {date:'2/8/14',code:'AV-502'},
   {date:'2/8/14',code:'AV-501'},
   {date:'2/8/14',code:'AV-502'}
]

如何获取日期的每个代码的计数,即日期AV-502的{​​{1}}计数 和jquery中的1/8/14等相同。 需要的结果就像

2/8/14

2 个答案:

答案 0 :(得分:1)

试试这个:

var getCount = function (date, code) {
    var count = 0;
    $.each(arr, function (key, val) {
        if (val.date === date && val.code === code) {
            count++;
        }
    });
    return count;
}

//call this function
getCount('1/8/14', 'AV-502');

答案 1 :(得分:1)

你循环并计算它们。

您有如何循环并计算它们的一系列选项。 Several are described in this question and its answers

除此之外,还有ES5 Array#reduce功能:

var count = yourArray.reduce(function(prev, entry) {
    return entry.code === "AV-502" ? prev + 1 : prev;
}, 0);