在 JavaScript 中将 Set 转换为数组

Shiv Yadav 2023年1月30日
  1. 在 JavaScript 中使用 Array.from() 将集合转换为数组
  2. 在 JavaScript 中使用 Spread 运算符将集合转换为数组
  3. 使用 JavaScript 中的 Set.prototype.forEach() 函数将 Set 转换为数组
在 JavaScript 中将 Set 转换为数组

在本文中,我们将研究在 JavaScript 中将 Set 转换为数组。

在 JavaScript 中使用 Array.from() 将集合转换为数组

  • Array.from() 允许你从以下来源构建数组:
  • 类数组对象(具有索引项和长度属性的对象);或者
  • 可以迭代的项目(例如 Map 和 Set)。

从像 Set 这样的可迭代对象中,Array.from() 方法可以构造浅拷贝的 Array 实例。使用 ES6,它被添加到 Array 对象中。这就是代码的样子:

var aa = new Set([1, 3, 5, 7]);
let ar = Array.from(aa);

console.log(ar);

输出:

[1, 3, 5, 7]

在 JavaScript 中使用 Spread 运算符将集合转换为数组

扩展 syntax (...) 扩展迭代,例如数组表达式或字符串,其中需要零个或多个参数(用于函数调用)或元素(用于数组文字),或者零个或多个键值对扩展为预期的位置(对于对象文字)。

你还可以使用扩展运算符将 Set 更改为数组。展开语法允许增加集合,其中需要一个数组文字。反过来,它引入了 JavaScript 的 ES6 规范。

下面测试它的使用:

var aa = new Set([1, 3, 5, 7]);
let ar = [...aa];

console.log(ar);

输出:

[1, 3, 5, 7]

使用 JavaScript 中的 Set.prototype.forEach() 函数将 Set 转换为数组

另一种解决方案是将 Set 的每个元素添加到数组中。这可以使用 forEach() 方法轻松完成,如下所示:

var aa = new Set([1, 3, 5, 7]);
let ar = [];
aa.forEach(k => ar.push(k));

console.log(ar);

forEach() 方法为 Set 对象中的每个值执行一次提供的回调。

输出:

[1, 3, 5, 7]
作者: Shiv Yadav
Shiv Yadav avatar Shiv Yadav avatar

Shiv is a self-driven and passionate Machine learning Learner who is innovative in application design, development, testing, and deployment and provides program requirements into sustainable advanced technical solutions through JavaScript, Python, and other programs for continuous improvement of AI technologies.

LinkedIn

相关文章 - JavaScript Array

相关文章 - JavaScript Set