//本來以為挺簡單,還是天真,考慮,nan,{}.
1:arr.splice(i+1,1);//表示插入刪除元素,表示刪除i+1個元素,1表示刪除乙個
//手寫陣列去重
var arr = [1,2,3,3];
//排序的陣列 arr.sort();//排序好了就不寫了
for(var i=0;i
}
console.log(arr);
2:es6去重
去重的原理:
set()結構本身的特性:set容器 : 無序不可重複的多個value的集合體
array.from(v) : 將偽陣列物件或可遍歷物件轉換為真陣列
functionunique (arr)
var arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, nan, nan,'nan', 0, 0, 'a', 'a',{},{}];
console.log(unique(arr)) //
[1, "true", true, 15, false, undefined, null, nan, "nan", 0, "a", {}, {}]6方法去重
3:es5去重
functionunique(arr)}}
return
arr;
}var arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, nan, nan,'nan', 0, 0, 'a', 'a',{},{}];
console.log(unique(arr))
//[1, "true", 15, false, undefined, nan, nan, "nan", "a", , ] //nan和{}沒有去重,兩個null直接消失了
4:更多參考
手寫陣列去重,多種方法
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 console.log arr2 1,23,3,5,6,7,9,8 var arr 1 1,2 2,3...
JS陣列去重,物件去重
例項1根據indexof去重,indexof的好處就是返回的是首次出現的位置,這樣後面即使出現的值一樣,也只能返回第一次出現的索引,當然這個只適用於簡單的陣列 物件陣列去重 const objarr const obj const newobjarr for let i 0 i objarr.len...
js陣列去重以及陣列內物件去重
大家在寫專案的時候一定遇到過這種邏輯需求,就是給乙個陣列進行去重處理,還有一種就是給陣列內的物件根據某乙個屬性,比如id,進行去重,下面我寫了兩個函式,都是可以達到這個效果的,乙個是純es5的去重辦法,乙個是用了es6的array.from new set 和es5的reduce來進行去重 我先定義...