陣列去重的幾種方法
陣列去重
1.利用indexOf遍歷陣列去重
function unique(arr){
const res = []
arr.forEach(item => {
if (res.indexOf(item) < 0){
res.push(item)
}
})
return arr
}
新建一個空的結果陣列,迴圈原陣列,判斷結果陣列是否存在當前元素,如果有相同的值則跳過,不相同則push進陣列。
2.Set
function unique(arr){
const set = new Set(arr)
return [...set]
set是ES6中引入的新的資料型別。set只允許儲存不重複的值,所以當你放入一個陣列,它會自動去掉重複的值。
3.利用for巢狀for,然後splice去重
function unique(arr){
for(var i=0; i<arr.length; i++){
for(var j=i+1; j<arr.length; j++){
if(arr[i]==arr[j]){ //第一個等同於第二個,splice方法刪除第二個
arr.splice(j,1);
j--;
}
}
}
return arr;
}
雙層迴圈,外層迴圈元素,內層迴圈時比較值。值相同時,則刪去這個值。
4.利用sort()
function unique(arr) {
arr = arr.sort()
var arrry= [arr[0]];
for (var i = 1; i < arr.length; i++) {
if (arr[i] !== arr[i-1]) {
arrry.push(arr[i]);
}
}
return arrry;
}
利用sort()排序方法,然後根據排序後的結果進行遍歷及相鄰元素比對。
相關文章
- JS陣列去重的幾種方法JS陣列
- 陣列去重的幾種方式陣列
- 陣列去重的幾個方法陣列
- 陣列去重的六種方法陣列
- JS陣列去重的10種方法JS陣列
- JS陣列去重7種方法JS陣列
- 7種方法實現陣列去重陣列
- 陣列去重的方法陣列
- JavaScript陣列去重(12種方法,史上最全)JavaScript陣列
- 整理了js陣列去重4種方法JS陣列
- JavaScript&ES6----陣列去重的四種方法JavaScript陣列
- JavaScript陣列去重方法JavaScript陣列
- JS實現陣列去重方法總結(六種方法)JS陣列
- JS陣列去重 – JSON陣列去重陣列JSON
- 親測有效JS中9種陣列去重方法JS陣列
- 好像不是最全的陣列去重方法陣列
- 陣列去重的各種方式對比陣列
- 遍歷陣列的幾種方法陣列
- JavaScript陣列去重方法總結JavaScript陣列
- 面試官在“逗”你係列:陣列去重你會幾種呀?面試陣列
- 陣列去重陣列
- 陣列去除重複的幾個方法陣列
- 分割陣列的幾種方法比較陣列
- js陣列去重JS陣列
- JavaScript 陣列去重JavaScript陣列
- 陣列物件去重陣列物件
- JavaScript陣列去重JavaScript陣列
- 判斷是否是陣列的幾種方法陣列
- 陣列的去重和排序陣列排序
- 解鎖多種JavaScript陣列去重姿勢JavaScript陣列
- js物件陣列去重JS物件陣列
- js陣列物件去重JS陣列物件
- 陣列去重和求和陣列
- javascript之陣列去重JavaScript陣列
- 關於陣列去重陣列
- 陣列去重和陣列扁平化陣列
- golang 陣列去重 移除陣列指定元素Golang陣列
- JS陣列去重的實現JS陣列