1. 程式人生 > >最簡單的陣列去重方式

最簡單的陣列去重方式

程式碼:

// 去除陣列的重複成員
[...new Set(array)]

一行程式碼全部解決,原理:使用es6提供的新的資料結構 Set。它類似於陣列,但是成員的值都是唯一的,沒有重複的值。

特點:

1 程式碼簡單 
2 可以去重NaN

精確相等運算子(===)認為NaN不等於自身,而在Set內部,連NaN都是相等的,所以陣列中的NaN都能去重,原因是Set內部是使用叫做“Same-value equality”的演算法判斷兩個值是否相等的。(這個演算法本人也不是很明白,但是很牛啊,有興趣的可以自己去查檢視)