ES6怎么将Set转化为数组

其他教程   发布日期:2023年07月08日   浏览次数:191

本文小编为大家详细介绍“ES6怎么将Set转化为数组”,内容详细,步骤清晰,细节处理妥当,希望这篇“ES6怎么将Set转化为数组”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

Set
是 ES6 中新增的一种集合类型,类似于数组,但其成员的值是唯一的,即不会重复。关于Set,可以阅读《JavaScript中的Set数据操作:交集、差集、交集、对称差集》。
Set
对象是一个构造函数,可以使用
new
关键字来创建一个
Set
实例。

例如:

const mySet = new Set();

Set
对象具有以下特征:
  • Set
    实例的成员唯一,不会重复。
  • Set
    实例可以存储任何类型的值,包括基本类型和对象。
  • Set
    实例是可迭代的,可以使用
    for...of
    循环遍历其中的值。
  • Set
    实例的
    size
    属性可以用来获取它包含的成员数量。

Set
对象有以下常用方法:

add(value)
:添加一个值到
Set
实例中。
delete(value)
:从
Set
实例中删除一个值。
has(value)
:判断
Set
实例中是否包含某个值,返回一个布尔值。
clear()
:清空
Set
实例中的所有值。

可以使用以下代码创建一个包含几个元素的

Set
对象并使用其方法:
const mySet = new Set();
mySet.add(1);
mySet.add("two");
mySet.add({ name: "DevPoint" });
console.log(mySet.has("two")); // 输出 true
mySet.delete(1);
console.log(mySet.size); // 输出 2
mySet.clear();
console.log(mySet.size); // 输出 0

在 ES6 中,可以使用

Array.from()
方法将
Set
转换为数组。该方法接受一个可迭代对象,并返回一个新数组。

例如,假设有一个

Set
对象
mySet
,可以按以下方式将其转换为数组:
const mySet = new Set([1, 2, 3]);
const myArray = Array.from(mySet);
console.log(myArray); // 输出 [1, 2, 3]

除此之外,还可以使用扩展运算符

...
来将
Set
转换为数组。例如:
const mySet = new Set([1, 2, 3]);
const myArray = [...mySet];
console.log(myArray); // 输出 [1, 2, 3]

这种方法更简洁,但不支持 IE 浏览器。

除了使用

Array.from()
方法和扩展运算符
...
,还有就是通过遍历
Set
并将每个元素添加到一个新数组中。
const mySet = new Set([1, 2, 3]);
const myArray = [];
for (let item of mySet) {
  myArray.push(item);
}
console.log(myArray); // 输出 [1, 2, 3]

以上就是ES6怎么将Set转化为数组的详细内容,更多关于ES6怎么将Set转化为数组的资料请关注九品源码其它相关文章!