1.用sort 先排序,再判斷條件,添加到數組
function duplicates(arr) {
// 定義一個a變量接收數組進行排序,變量b爲空的
var a=arr.sort(),b=[];
for(var i in a){
// 判斷兩個條件(當前的相等於前面的一個)且(b空數組裏面沒有這個元素)
if(a[i]==a[i-1] && b.indexOf(a[i])==-1) {
// 符合條件的元素添加到空的數組中
b.push(a[i]);
}
}
// 返回相應的數組
return b;
}
- 用 filter 方法返回符合條件的數組
function duplicates(arr) {
// 返回符合條件的數組
return arr.filter( function( e , i ) {
// 從右邊查不能等於下標,從左邊能查能等於下標
return arr.lastIndexOf( e ) != i && i == arr.indexOf( e )
})
}