1.数组去重(ES6和非ES6,是否返回新数组,是否不改变排序,以及合并去重等)
var arr=[1,2,3,3,4,5,5,4]
-
es6,利用set
var b=[...new Set(arr)];
-
总体代码,速度较快,利用对象特性,不改变排序,返回新数组
Array.prototype.dedupe=function () {
var arr=this, i, obj={},result=[],len=arr.length;
for(i=0;i<len;i++){
if(!obj[arr[i]]){//如果没有重复
obj[arr[i]]=1;
result.push(arr[i]);
}
}
return result;
}