js 数组去重
记得js 数组去重3种方法:
- for 循环两次
- 使用 Array.prototype.indexOf[注意这个方法是 es5 的,兼容性]
- 使用 对象的键具有唯一性的这一特性,其实在python中的 sets key 也是具有唯一性的
// 使用第三种方法实现的兼容性处理,感觉这个方法不错哦
Array.prototype.unique = function () {
var arr = [],
obj = {};
for (var i = 0; i < this.length; i++) {
if (!obj[this[i]]) {
arr.push(this[i]);
obj[this[i]] = true;
}
}
return arr;
}
// 上述还是需要进行一次 赋值的
var arr = [1,2,4,3,2,1];
arr = arr.unique();
//console.log(arr);