JS类数组(对象)去重的方法
原理:类数组既可以当作对象看,也可当作数组看,利用对象的对象名不可能重复的特点,实现数去重.
直接上代码
Array.prototype.unique = function() {
var temp ={}; //空对象,就是我们的类数组
var arr = []; //去重后的结果
var len = this.length; //这步只是优化一下代码
for (var i = 0; i<len ;i++){
//如果这个空对象中不存在this[i]这个属性名,则认为是一个没有出现重复的值,然后push到arr中,最后返回arr
if(!temp[this[i]]){
temp[this[i]] = 'abc';
arr.push(this[i])
}
}
return arr
}
var a = [1,1,2,4,4,5]
console.log(a.unique())
可以直接复制代码去试试哦
无聊的知识又增加了