How to count duplicate value in an array in javascript

前端 未结 28 1868
后悔当初
后悔当初 2020-11-22 06:07

Currently, I got an array like that:

var uniqueCount = Array();

After a few steps, my array looks like that:

uniqueCount =          


        
28条回答
  •  天涯浪人
    2020-11-22 06:27

    A combination of good answers:

    var count = {};
    var arr = ['a', 'b', 'c', 'd', 'd', 'e', 'a', 'b', 'c', 'f', 'g', 'h', 'h', 'h', 'e', 'a'];
    var iterator = function (element) {
        count[element] = (count[element] || 0) + 1;
    }
    
    if (arr.forEach) {
        arr.forEach(function (element) {
            iterator(element);
        });
    } else {
        for (var i = 0; i < arr.length; i++) {
            iterator(arr[i]);
        }
    }  
    

    Hope it's helpful.

提交回复
热议问题