一、普通方法
function arrSort () {
var arrOld = [2, 3, 5, 4, 3, 2, 6, 8, 5, 4, 6, 2];
var flag = true;//假设新数组中没有与旧数组相同的元素
// 创建一个新数组
var arrNew = [];
// 遍历旧数组
for (var i = 0; i < arrOld.length; i++) {
flag = true;
// 遍历新数组
for (var j = 0; j < arrNew.length; j++) {
if (arrNew[j] == arrOld[i]) {
flag = false;
}
}
// 不能往新数组中放置相同的元素
if (flag) {
// 往新数组中放置旧数组中的元素
arrNew.push(arrOld[i])
}
}
console.log(arrNew);//[2,3,5,4,6,8]
}
二、利用对象的属性不能重复的特点进行数组去重
var arr = [2, 3, 5, 4, 3, 2, 6, 8, 5, 4, 6, 2];
//1、创建新数组
var newArr = [];
//2、创建新对象
var newObject = {};
//3、遍历旧数组
for (i = 0; i < arr.length; i++) {
//4、将旧数组中的元素当做新对象的属性名,属性值随意写
newObject[arr[i]] = 1;
}
for (x in newObject) {
//5、遍历新对象
//6、将新对象中的属性当做新数组的元素即可
newArr.push(Number(x));
}
console.log(newArr);