多種陣列去重的方法

2021-09-12 03:59:15 字數 1154 閱讀 8945

陣列內都是數字方法:

1.建立乙個空陣列,用於存放不重複的值

2.給陣列排序

3.用遞迴相鄰逐個對比,如果不相同,則push到建立的空陣列裡面去

var a = [1,2,5,6,2,1,0,2,8,4,56,4,65,4];

var n = ;

var s = a.sort(function(a,b))

function cz(num)

arguments.callee(num+1); }}

cz(0);

console.log(n) // [0, 1, 2, 4, 5, 6, 8, 56, 65]

陣列內是字串或其他方法:(indexof在ie8及以下不相容)

1.建立乙個空陣列,用於存放不重複的值

2.用indexof配合遞迴,查詢新建立的陣列內部是不是有跟另乙個對比陣列內相同的值,如果沒有返回-1,那就把另乙個對比陣列當前的值push到新陣列內

var arr = ["hehe","haha","heihei","haha","oo","hehe","haha"];

var arr2 = ;

function strcz(num2)

arguments.callee(num2+1); }

}strcz(0)

console.log(arr2); //  ["hehe", "haha", "heihei", "oo"]

雜亂去重方法:

1.建立乙個新陣列用於儲存篩選出來的資料

2.迴圈第乙個陣列,在迴圈內部再迴圈第乙個陣列,拿到第乙個陣列的第(i)個值,去跟第(i+1)個值比較,如果相同就(i+1),終止當前迴圈,如果不相同,就push到新陣列裡面

var tm = ["sd","asdas","sd",1,2,3,4,5,51,13,2,3,1,2];

var tm2 = ;

for(var i=0; i使用splice去重的方法:

//splice 陣列去重

var ars = ["asdas","s","asda","asda","asda",1,2,3,4,5,3,2,1];

for(var i=0; iconsole.log(ars)

幾種陣列去重方法

使用es6中的set是最簡單的去重方法。var arr 1 1,true true true true,15 15,false false undefined,undefined,null null nan nan nan 0 0,a a function arr unique1 arr arr u...

陣列去重的多種方法

陣列去重的方法有很多,廢話不多說下面只寫3種,分別是從複雜到簡單 1.利用foreach進行輪詢需要去重的陣列,然後通過判斷新陣列 這個新陣列需要在輪詢之前建立乙個空陣列 中是否包含進行新增不重複的每一項得到新陣列 此方法的缺點 function removedup arry return noma...

陣列去重的多種方法

1.將陣列的每乙個元素依次與其他元素做比較,發現重複元素,利用陣列方法splice 刪除重複元素 var arr 1 23,1 1,1 3,23 5,6 7,9 9,8 5,5 5,5 function norepeat arr return arr var arr2 norepeat arr co...