方法一:查找相同选项,利用continue跳出,push进新数组
var arr = [1,2,3,6,8,9,1,2,3,6,7,4,0,1],
arr1 = [];
for(var i = 0 ; i < arr.length ; i++) {
if (arr1.indexOf(arr[i]) !== -1) continue ;
//如果新数组中查找到了push进去的数字,那么就跳出,继续循环
arr1.push(arr[i]);
}
console.log(arr1) ;
//arr1为去重后的数组
方法二:查找相同选项,利用delete删除来对原数组进行去重
var arr = [1,2,3,6,8,9,1,2,3,6,7,4,0,1];
for (var i = 0 ; i < arr.length ; i++) {
if (arr.indexOf(arr[i],i+1) !== -1) {
//查找arr的第i项,从arr的第i+1项开始查
delete arr[i] ;
}
}
console.log(arr) ;
//arr为去重后的数组
方法三:利用布尔值是false来跳出判断,是true则push进新数组
var arr = [1,2,3,6,8,9,1,2,3,6,7,4,0,1],
arr1 = [] ;
for (var i = 0; i < arr.length; i++) {
var bool = true;
for (var j = 0; j < arr1.length; j++) {
if (arr[j] === arr[i]) {
bool = false;
break;
}
}
if (bool) {
arr1.push(arr[i]);
}
}
console.log(arr1)
//arr1为去重后的数组
方法四:es6 newSet,利用set类型中存储的值都是独一无二的特性来创建新数组
let arr = [1,2,3,6,8,9,1,2,3,6,7,4,0,1],
arr1 = [...new Set(arr)];
console.log(arr1)
//arr1为去重后的数组