Array.prototype.del=function(){
var b={},c,i=0,l=this.length,j;
for(;i<l;i++){
c=this.shift();
c in b ? b[c]++ : b[c]=0;
}
for(j in b){
if(b[j]>0)this.push(+j||j);
}
return this;
}
var a=[1,2,2,3,3,3,'a','b','b'];
alert(a.del());
Array.prototype.del=function(){
return (function (i, n, j, u, o){
for (; i < j; i++) {
o = this[i];
o in u ? 0 : (u[this[n++] = o] = 1)
}
this.length = n;
return this
}).call(this, 0, 0, this.length, {})
}
var a=[1,2,2,3,3,3,'a','b','b'];
alert(a.del())