// first 通过es6新语法去重
let testArray=[1,2,3,8,8,8,9];
console.log(Array.from(new Set(testArray))) ;
//second 通过数组indexOf或者includes方法加for循环去重
let testArray = [1, 2, 3, 6, 6, 7, 7]
let result = []
const arrayLength = testArray.length;
for (let i = 0; i < arrayLength; i++) {
if (result.indexOf(testArray[i]) === -1) {
result.push(testArray[i])
}
}
console.log(result)
// third
let testArray = [1, 2, 3, 9, 9, 6]
let result = []
const arrayLength = testArray.length;
for (let i = 0; i < arrayLength; i++) {
if (result.includes(testArray[i]) === false) {
result.push(testArray[i])
}
}
console.log(result)
//fourth 先通过sort方法排序然后再数组元素前后对比有没有相不相等去重
let testArray = [1, 2, 3, 4, 5, 6, 6];
let result = [];
function compare(a, b) {
return a - b;
}
testArray = testArray.sort(compare);
testArrayLength = testArray.length;
if (testArrayLength >= 2) {
for (let i = 0; i < testArrayLength - 1; i++) {
if (testArray[i] !== testArray[i + 1]) {
result.push(testArray[i]);
}
}
if (testArray[testArrayLength - 1] !== testArray[testArrayLength - 2]) {
result.push(testArray[i]);
}
}
if (testArrayLength == 1) {
result[0] = testArray[0];
}
console.log(result))
// fifth 两次循环遍历去重
let testArray = [1, 2, 3, 5, 6, 6];
let result = [];
testArrayLength = testArray.length;
if (testArrayLength >= 2) {
for (let i = 0; i < testArrayLength; i++) {
let flag = false
for (let j = i + 1; j < testArrayLength; j++) {
if (testArray[i] === testArray[j]) {
flag = true;
break;
}
}
if (!flag) {
result.push(testArray[i]);
}
}
}
if (testArrayLength == 1) {
result[0] = testArray[0];
}
console.log(result))
当然还有其他方法喔