吊炸天的数组去重

1
2
3
4
5
6
7
8
9
Array.prototype.unique = function() {
var a = [], l = this.length;
for(var i=0; i<l; i++) {
for(var j=i+1; j<l; j++)
if (this[i] === this[j]) j = ++i;
a.push(this[i]);
}
return a;
};

以上代码引自国外博文,阅读起来甚是烧脑;需注意的是我们平时运用for循环多是引用下标值而很少去修改它,上述代码修改了下标值改变了循环流程。