陣列去重的方法

2021-09-10 02:20:45 字數 1534 閱讀 5495

陣列去重

var ary=[1,23,4,2,33,1,2,44,3,2,3]

ary.sort(function

(a,b));//返回的是排好序的陣列

for(var i=0;iif(ary[i]===ary[i+1])

}

var ary=[1,23,4,2,33,1,2,44,3,2,3]

var arr2=;

for(var i=0;i

length;i++)

}

var ary=[1,23,4,2,33,1,2,44,3,2,3]

for(var i=0;ifor(var j=i+1;jif(ary[i]===ary[j])

}}

var ary=[1,23,4,2,33,1,2,44,3,2,3]

//新建乙個物件

var obj={};

for(var i=0;ivar cur=ary[i];

//如果obj【cur】為真,那就說明物件裡面找到了這個數,重複了

if(obj[cur])else

}

var ary=[1,23,4,2,33,1,2,44,3,2,3]

var obj={};

for(var i=0;ivar cur=ary[i];

if(obj[cur])else

}var ary2=;

//對於物件使用in 方法進行遍歷,遍歷獲取的是屬性值

for(var attr in obj)

陣列去重的面試題:
找出這次考試中,最高分,及最高分出現的次數

//思路:全部人的成績是乙個陣列,這就相當於使用陣列去重的方法,找到最高的分數,和其次數,首先找到了去重的陣列進行從小到大的排序,得到次數,然後通過最高分所對應的索引值得到出現的最高分

var ary = [1, 23, 4, 2, 33, 1, 2, 44, 3, 2, 3];

var obj = {};

for(var i = 0; i < ary.length; i++) else

}//分數從低到高出現的次數

console.log(obj);

var ary2 = ;

//對於物件使用in 方法進行遍歷,遍歷獲取的是屬性值

for(var attr in obj)

console.log(ary2);

//最高分

console.log(ary2[ary2.length-1]);

var count=ary2[ary2.length-1];

//最高分出現的次數

console.log(obj[count]);

posted @

2017-04-04 17:41

newman·li 閱讀(

...)

編輯收藏

陣列去重方法

1 es6提供了新的資料結構set,它類似於陣列,但是成員的值是唯一的,沒有重複的值。let arr 1,2,5,2,3,4,1,2,3,5,4,1,2,3,2,1,1,1,asd 123 123 123 asd 1,true,true,false console.log new set arr 或...

陣列去重方法

雙迴圈去重 雙重 for 或 while 迴圈是比較笨拙的方法,它的實現原理很簡單 先定義乙個包含原始陣列第乙個元素的陣列,然後遍歷原始陣列,將原始陣列中的每個元素與新陣列的每個元素進行比較,如果不重複則新增到新的陣列中,最後返回新的陣列,其缺點是如果陣列長度很長,那麼將會非常消耗記憶體 funct...

陣列去重方法

1.使用原生的filter和indexof來進行過濾和篩選。var filtered data.filter function item,index 複製 使用filter的第三個引數繫結this的值 var filtered2 data.filter function item,index,sel...