第一种方法
// 1. 创建一个新的数组
var newArr = []
//遍历老数组
for(var i = 0 ; i < arr.length ; i++){
//在新的数组当中找老数组的元素,是否存在,存在忽略
if(newArr.indexOf(arr[i]) === -1){
// 不存在,就将老数组里面的元素添加到新的数组里面去
newArr.push(arr[i])
}
}
//使用forEach遍历数组
arr.forEach(function(item,index){
if(newArr.indexOf(item) === -1){
newArr.push(item)
}
})
console.log(newArr);
第二种方法
//对数组进行排序
arr.sort(function(a,b){return a - b})
//如果数组的前一个元素与数组的后一个元素相同,那么干掉这个元素
for(var i = 0 ; i < arr.length ; i++){
if(arr[i] === arr[i+1]){
arr.splice(i,1)
//数组塌陷
i--
}
}
console.log(arr);
第三种方法
var arr = [1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 4, 4, 4];
for (var i = 0; i < arr.length; i++) {
for (var j = i + 1; j < arr.length; j++) {
if(arr[i] === arr[j]){
arr.splice(j,1)
j--;
}
}
}
console.log(arr);
第四种方法
//创建一个新的数组,用来存储对象的key的(数组去重复之后的元素)
var newArr = []
//创建一个对象,使用对象的key值来对数组里面的元素进行去重
var obj = {}
arr.forEach(function (item) {
// item => 往对象key里面扔
obj[item] = ""
})
//将对象里面的key值扔到新的数组里面去
//遍历对象
for (var key in obj) {
newArr.push(+key)
}
console.log(newArr);
暑期编程PK赛
得CSDN机械键盘等精美礼品!


