1、使用双重for循环进行去重
let arr = ["数组1", "数组2", "数组3", "数组1", 1, 1, 2, "2", "1"];
for (var i = 0; i < arr.length; i++) {
for (var j = i + 1; j < arr.length; j++) {
if (arr[i] === arr[j]) {
arr.splice(j, 1);
j--;
}
}
}
console.log(arr, "arr");
打印结果如下
双重for循环去重,判断是两个 == 是值相同的去重, === 是值和类型相同才去重,可以根据自己的需要进行选择判断。
2、使用es6去重
//使用es6和扩展运算符进行去重
let arr = ["数组1", "数组2", "数组3", "数组1", 1, 1, 2, "2", "1"];
var es6Arr = [...new Set(arr)];
console.log(es6Arr, "es6Arr");
打印结果
使用es6去重,简单方便,但是要考虑兼容性,还有由控制台打印的结果可以看出,Set去重,只有当值和类型都相同时,才会去重,类似双重循环的 === 所以根据自己需要选择使用。