PHP関数でarray_count_valuesといえば、配列内で同じ要素をカウントしてくれる関数です。
それをjavascriptで実装しましたので、利用してください。
実装
function array_count_values($array){
if(arguments.length != arguments.callee.length) throw new Error('指定する引数の数が間違っています。');
if(!Array.isArray($array)) throw new Error('引数には、配列を指定してください。');
var $return_data = [];
$array.forEach($value => {
$return_data[$value] = $return_data[$value] ? $return_data[$value] + 1 : 1;
});
return $return_data;
}
利用方法
配列内の同じ要素をカウントします。
例えば、
$sample = ['A','B','C','D','E','F','A','A','B'];
console.log(array_count_values($sample));
を実行した場合には、
[A: 3, B: 2, C: 1, D: 1, E: 1, F: 1]
のような結果を返します。