數組去重

 

 

數組去重是過濾掉數組中重複的數據,下面介紹數組去重的幾種方法:數組


1.建立兩個數組,把數組內的元素放到另一個數組中,判斷是否存在重複的元素,重複的元素就不添加。ui

var arr = [ 1, 2, 2, 3, 4, 5, 4, 6, 3, 7, 8];
var arr2 = [];
for(var i= 0;i<arr.length;i++){
if(arr2.indexOf( arr[i])== -1)
{
arr2.push(arr[i]);
}
}
alert(arr2);

上面使用了indexOf()來判斷是否存在重複的元素。indexOf()定位字符串某個指定的字符首次出現的位置。若是arr2有重複的元素,indexOf()返回出現元素的位置,不添加到arr2中,若是找不太重複的元素就返回-1。spa

2.建立一個新數組,遍歷一下原來的數組,若遍歷元素在新數組中不存在就添加到數組中,反之不添加。
與上面的思路相同,都是建立兩個數組,而後判斷是否存在重複的元素;不一樣的是這裏不用indexOf()去判斷,是添加一個開關量並設置初始值爲false,當爲true時向新數組中添加元素。blog

var arr = [ 1, 2, 2, 2, 3, 4, 5, 4, 6, 3, 7, 8];
fn(arr);
function fn(arr){
var arr2 = [];
for( var i = 0;i < arr.length; i++){
var repeat = false;
for( var j = 0;j < arr2.length;j++){
if(arr[i] === arr2[j]){
repeat = true;
break;
}
}
if(!repeat){
arr2.push(arr[i]);
}
}
console.log(arr2)
}

相關文章
相關標籤/搜索