es6中的Set方法(根据Set的值不能重复的特性)
var arr = [1,2,3,4,5,6,1,2,3]
var list =new Set(arr); //将arr放入Set方法中使arr中没有重复的值
var arr2 = Array from(list) //此时将该字符串转化成数组并打印
console.log(arr2);
利用indexOf的特性将数组中一个个比较去重
var arr = [2, 8, 2, 5, 0, 7, 5, 0, 5, 2, 6, 7, 2];
var newArr = []; //设置一个新的空数组用来遍历后往里传值
for (var i = 0; i < arr.length; i++) { //将原来的数组遍历
if (newArr.indexOf(arr[i]) == -1) { //判断如果空数组中穿的值在遍历过程中没有就进行添加
newArr.push(arr[i]);
}
}
console.log(newArr);
传统字体遍历方法
var arr = [1, 1, 2, 3, 3, 2, 1, 1, 3, 5];
var newArr = []; //设置一个新的空数组
for (var i = 0; i < arr.length; i++) { //遍历原数组
var flag = true; //给一个变量赋值true,用作if循环中的
for (var j = 0; j < newArr.length; j++) { //遍历一下新的空数组 让原数组遍历的元素与空数组进行比较
if (arr[i] == newArr[j]) { //if语句进行筛选,空数组中与原数组中相同的值给他pass掉
flag = false;
break;
}
}
if (flag) {
newArr.push(arr[i]); // 往空数组中进行添加元素
}
}
console.log(newArr);