//第一种
function arr1(array) {
var temp = [];
for (var i = 0; i < array.length; i++) {
if (temp.indexOf(array[i]) == -1) { // 通过indexOf判断将不重复的数字push到新数组
temp.push(array[i]);
}
}
return temp;
}
var arr_1 = [1, 2, 3, 4, 5, 6, 5, 4, 1, 2, 3, 6, 9, 7]
console.log(arr1(arr_1));
//第二种
var arr2 = [1, 2, 3, 4, 4, 5, 6, 7, 3, 3, 3]
function unique() {
var set = new Set(arr2); // 最快捷的去重方法
var set1 = [...set] //ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。
console.log(set1);
}
unique()
//第三种
1、创建新数组、创建新对象
2、遍历旧数组
3、让旧数组中的元素当做新对象的属性,属性值随意写
4、遍历新对象
5、将新对象中的属性push到新数组中即可
var newArr = [];
var newObj = {};
for (var i = 0; i < arr.length; i++) {
newObj[arr[i]] = 1;
}
console.log(newObj);
for (x in newObj) {
newArr.push(Number(x));
}
console.log(newArr);