const arr = ['a','bb','22','a','yuci','haha','22'];
1、es6的数据结构 —— Set
let arr1 = new Set(arr);
console.log(Array.from(unique));
2、使用push()
let arr2 = [];
for(let i = 0; i < arr.length; i++) {
if(arr2.indexOf(arr[i]) == -1) { //不包含某个值则返回-1
arr2.push(arr[i]);
}
}
console.log(arr2);
//如果当前数组的第i项在当前数组中第一次出现的位置不是i,那么表示第i项是重复的,忽略掉。否则存入结果数组
let arr3 = [arr[0]];
for(let i = 1; i < arr.length; i++) {
if(arr.indexOf(arr[i]) == i) {
arr3.push(arr[i]);
}
}
console.log(arr3);
3、排序去除相邻重复元素
let arrSort = arr.sort();
let arr4 = [];
for(let i = 0; i < arrSort.length; i++) {
if(arrSort[i] != arrSort[i+1]) {
arr4.push(arrSort[i]);
}
}
console.log(arr4);
4、使用splice()
let len = arr.length;
for(let i = 0; i < len; i++) {
for(let j = i + 1; j < len; j++) {
if(arr[i] === arr[j]) {
arr.splice(i,1);
len--;
j--;
}
}
}
console.log(arr);