1. ホーム
  2. javascript

[解決済み] javascriptで配列の重複値をカウントする方法

2022-05-08 06:35:49

質問

現在、このような配列になりました。

var uniqueCount = Array();

数ステップで、私の配列はこのようになります。

uniqueCount = [a,b,c,d,d,e,a,b,c,f,g,h,h,h,e,a];

配列の中にa,b,cがいくつあるか数えるにはどうしたらよいでしょうか?というような結果が欲しいです。

a = 3
b = 1
c = 2
d = 2

などです。

解決方法は?

function count() {
    array_elements = ["a", "b", "c", "d", "e", "a", "b", "c", "f", "g", "h", "h", "h", "e", "a"];

    array_elements.sort();

    var current = null;
    var cnt = 0;
    for (var i = 0; i < array_elements.length; i++) {
        if (array_elements[i] != current) {
            if (cnt > 0) {
                document.write(current + ' comes --> ' + cnt + ' times<br>');
            }
            current = array_elements[i];
            cnt = 1;
        } else {
            cnt++;
        }
    }
    if (cnt > 0) {
        document.write(current + ' comes --> ' + cnt + ' times');
    }

}

count();

デモフィドル

高次の関数も使って操作できる。 この回答を見る