var data=[3,2,2,2,2,1,2,1];
console.log(countUnique(data));
function countUnique(data){
var count={};
$(data).each(function(index){
count[data[index]] = count[data[index]]+1 || 1;
});
return count;
}
output = "Объект {1: 2, 2: 5, 3: 1}"
Это работает и для строк.
Чтение вывода может быть выполнено с использованиемследующий цикл
for(var key in count)
{
console.log(key); // prints the index of the array
console.log(count[key]); //prints the number of occurrences
}