数组去重:
利用对象的特性:同一个属性名不可能出现两次
方法:将数组的属性值当作对象的属性名添加到对象里去
代码示例:
<script type = "text/javascript">
Array.prototype.unique = function (){
var temp = {}, //用对象构成一个新数组
arr = [],
len = this.length,
for(var i = 0; i < len; i ++){
if(!temp[this[i]]){ //这里等于说是一个新的temp[1](第一次循环),所以里面是undefined,取!,则为true,可以进入循环,在进行赋值
temp[this[i]] = "abc";
arr.push(this[i]);
}
}
return arr;
}
var arr = [1,1,1,2,2,2,3,3,3];
console.log(arr.unique());
//[1,2,3]
</script>