js陣列去重的幾種方式

2021-10-25 11:01:26 字數 1362 閱讀 1331

雙重for迴圈去重

//思路

//i:[1, 2, 2, 2, 3, true, undefined, 'true', 'true', 'undefined', 'undefined', 7, 8, 9]從第乙個元素開始

//j:

//[2, 2, 2, 3, true, undefined, 'true', 'true', 'undefined', 'undefined', 7, 8, 9]

//[2, 2, 3, true, undefined, 'true', 'true', 'undefined', 'undefined', 7, 8, 9]

//...

//[9] 如果arr[i] === arr[j]就刪除

function

uniq

(arr)}}

return arr

}

最簡單去重方式  es6去重

function

uniq

(arr)

利用reduce去重

function

uniq

(arr),[

])console.

log(array)

}

利用filter去重

function

uniq

(arr)

) console.

log(array)

}

利用sort去重

function

uniq

(arr)})

}

利用includes

function

uniq

(arr)})

console.

log(array)

}

利用indexof

function

uniq

(arr)})

console.

log(array)

}

利用物件的屬性不能相同的特點進行去重

function

uniq

(arr)

arr.

foreach

((item, index)

=>})

let array = object.

keys

(obj)

}

如果有錯誤請指出謝謝。

陣列去重的幾種方式

function uniquearray arr 複製 優點 簡潔,速度快,時間複雜度為o n 缺點 需要乙個額外的set和array的儲存空間,空間複雜度為o n function uniquearray arr return arr 複製 優點 不需要使用額外的儲存空間,空間複雜度為o 1 缺點...

js中陣列去重的幾種實現方式 區別

1.利用es6的 set 方法 常用 說明 缺點 無法去除陣列中的空物件 let ary 12 23,12 15,25 23,25 14,16 ary newset ary console.log ary let ary 12 23,12 15,25 23,25 14,16 ary array.fr...

陣列去重並排序幾種方式

1 解析多維陣列 let array 1,2,2,3 2,3,4,5 6,6,7,8,9,11,12,12,13,14 10 陣列flat 方法可以把多維陣列解析出來 引數為解析的層數 let newarr array.flat 4 結果為 1,2,2,3,2,3,4,5,6,6,7,8,9,11,...