数组去重的3种方式
var arr = [1,4,2,3,4,5,6,7,3,4,5,23,2,3,4,5,3,2,3,4,5];
function findInArray(n,arr){
for (var i=0; i<arr.length; i++) {
if(arr[i]==n){
return true;
}
}
return false;
}
function removeRep1(arr){ //方法2
var arr1 = [];
for (var i=0; i<arr.length; i++) {
if(!findInArray(arr[i],arr1)){
arr1.push(arr[i]);
}
}
return arr1;
}
function removeRep2(arr){ //方法2,先排序,然后将前后相同的元素删除一个,再i--
arr.sort();
for (var i=0; i<arr.length; i++) {
if(arr[i]==arr[i+1]){
arr.splice(i,1);
i--;
}
}
return arr;
}
function removeRep3(arr){ //方法3,运用json里面键不能重复的特性
var json = {};
var arr3 = [];
for (var i=0; i<arr.length; i++) {
json[arr[i]] = ‘hello‘;//json中的每个键就是数组中的值,值都写hello也没关系,可以重复,而json中的键是不能重复的,如果遇到一样的键,会把前面相同的键以及对应的值都覆盖
}
for (var name in json){
arr3.push(Number(name));
}
console.log(arr3);
}
removeRep3(arr);
var arr = [1,4,2,3,4,5,6,7,3,4,5,23,2,3,4,5,3,2,3,4,5];
function findInArray(n,arr){
for (var i=0; i<arr.length; i++) {
if(arr[i]==n){
return true;
}
}
return false;
}
function removeRep1(arr){ //方法2
var arr1 = [];
for (var i=0; i<arr.length; i++) {
if(!findInArray(arr[i],arr1)){
arr1.push(arr[i]);
}
}
return arr1;
}
function removeRep2(arr){ //方法2,先排序,然后将前后相同的元素删除一个,再i--
arr.sort();
for (var i=0; i<arr.length; i++) {
if(arr[i]==arr[i+1]){
arr.splice(i,1);
i--;
}
}
return arr;
}
function removeRep3(arr){ //方法3,运用json里面键不能重复的特性
var json = {};
var arr3 = [];
for (var i=0; i<arr.length; i++) {
json[arr[i]] = ‘hello‘;//json中的每个键就是数组中的值,值都写hello也没关系,可以重复,而json中的键是不能重复的,如果遇到一样的键,会把前面相同的键以及对应的值都覆盖
}
for (var name in json){
arr3.push(Number(name));
}
console.log(arr3);
}
removeRep3(arr);
时间: 2024-10-12 19:11:51