1. 程式人生 > >利用es6的set對簡單陣列進行去重

利用es6的set對簡單陣列進行去重

1:淺析Set結構資料: 在es6裡面,Set結構的資料是類陣列的一個數據結構,但是它的成員值都是唯一的,根據這個特性,我們將普通陣列進行去重已經成功了一半,那麼另一個半是什麼呢?剛剛有提到,Set結構的資料,是類陣列的資料結構,也就是說它並不是真的陣列,那麼如何將類陣列轉換成陣列呢,這裡就不得不提到es6裡面的Array的擴充套件Array.from方法了 2:Array.from方法: Array.from方法用於將兩類物件轉為真正的陣列:類似陣列的物件(array-like object)和可遍歷(iterable)的物件(包括 ES6 新增的資料結構 Set 和 Map)。正如概念中提到的,它將類陣列物件轉換成真正的陣列; 3:Array.from和Set的結合使用對陣列進行去重: 因為Array.from能將類陣列轉換成真正的陣列,而Set結構的資料,又存在唯一性,則只需要將兩者結合使用,就可以真正的對普通陣列進行去重了;示例如下所示:

var a=[1,1,2,3,4,5,3,6,2,9,8]; var b=Array.from(new Set(a)); console.log(b); 如上所示,要注意,Array.from的方式對陣列進行去重的時候,並不會改變原陣列a;

以上就是利用es6的特性對普通陣列進行去重的方法了,但是上面的方法不可以對陣列物件進行去重;