<script>
var arr = [9, 9, 9, 111, 5, 2, 5, 3, 4, 4, 5, 7];
function foo(a, c) {
c--;
var d = {};
return a.filter(function(b, e, a) {
if (d[b]) return !1;
d[b] = !0;
for (var f = 0; ~(e = a.indexOf(b, ++e));) f++;
return f == c
})
};
document.write(JSON.stringify(foo(arr,1)) + "<br>")//без повтора
document.write(JSON.stringify(foo(arr,3)))// тройные дубликаты
</script>