乐趣区

关于前端:JavaScript-中-Set数据结构

Set 数据结构

Set 是 ES6 中引入的一种新的数据结构,它是一种汇合,能够存储任意类型的数据
Set 每个元素的值在汇合中是惟一的。应用 Set 数据结构能够不便地去除数组或对象中的反复元素。

利用场景

// 1  数组去重
const arr = [1, 2, 3, 2, 1];
const set = new Set(arr);
const newArr = Array.from(set); // newArr = [1, 2, 3]

// 2 对象去重
const arr = [{id: 1}, {id: 2}, {id: 1}, {id: 3}];
const set = new Set(arr.map(item => item.id));
const newArr = Array.from(set, id => ({ id})); 
// newArr = [{id: 1}, {id: 2}, {id: 3}]
 在下面的代码中,咱们首先应用 Array.map 将数组中的对象映射为它们的 id 值,而后应用 new Set 去除反复的 id 值。最初,咱们应用 Array.from 将汇合转换为对象数组,并依据每个 id 值创立一个新的对象,失去不反复对象的数组。
退出移动版