1,利用splice直接在原数组进行操作
let array=[1,5,2,3,4,2,3,1,3,4];
function unique(array) {
for(i = 0; i < array.length; i++){
for(j = i + 1; j < array.length; j++){
if(array[i] == array[j]){
array.splice(j,1);
array.length--;
j--;
}
}
}
return array;
};
优点:简单易懂
缺点:占用内存高,速度慢
2,使用了map数组去重的方法
let array=[1,5,2,3,4,2,3,1,3,4];
function unique(array) {
let map = new Map();
let result = new Array(); // 数组用于返回结果
for (let i = 0; i < arr.length; i++) {
if(map.has(arr[i])) { // 判断 map 中是否已有该 key 值
map.set(arr[i]);
} else { // 如果 map 中没有该 key 值,添加
map.set(arr[i]);
result.push(arr[i]);
}
}
return result;
}
console.log(unique(array));//[1,5,2,3,4]