Valores únicos em matrizes JavaScript

Um trecho que uso com frequência para remover a entrada duplicada em meus arrays, é uma extensão da arrayclasse.

Array.prototype.unique = function () {
var r = [];
o
:for(var i = 0, n = this.length; i < n; i++)
{
for(var x = 0, y = r.length; x < y; x++)
{
if(r[x]===this[i])
{
continue o;
}
}
r
[r.length] = this[i];
}
return r;
};

Use desta forma: [1, 2, 3, 4, 1].unique()

Ele retornará: [1, 2, 3, 4]

Boa codificação!