How to count duplicate value in an array in javascript

前端 未结 28 1417
后悔当初
后悔当初 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:15

    Nobody responding seems to be using the Map() built-in for this, which tends to be my go-to combined with Array.prototype.reduce():

    const data = ['a','b','c','d','d','e','a','b','c','f','g','h','h','h','e','a'];
    const result = data.reduce((a, c) => a.set(c, (a.get(c) || 0) + 1), new Map());
    console.log(...result);

    N.b., you'll have to polyfill Map() if wanting to use it in older browsers.

提交回复
热议问题