这篇文章讲述了在JavaScript中把Set类型转换为Array的3种方法:
- forEach循环
- ES6传播语法
- 从函数中使用数组
forEach 循环
forEach循环是一种循环语法,用于迭代集合中的元素。
其语法为forEach(callback,[arg]) callback是为集合中的每个元素调用的函数。
它需要三个输入参数--Current element(当前元素)、index(索引位置,可选)和array(为每个元素调用的新数组):
const arrayObj = [];
mySet.forEach(element=> arrayObj.push(element));console.log(arrayObj); //[ 21, 3, 10 ]
console.log(typeof arrayObj); //object
ES6传播新语法
ES6引入了传播操作符语法。
传播操作符(...)允许扩展集合和预期值,至少有一个元素。 使用传播操作符很简单
var mySet = new Set([21, 3, 10,21]);
let arrayObj= [...mySet];
console.log(arrayObj);//[ 21, 3, 10 ]
console.log(typeof arrayObj); //object
数组中的本地from函数。
from()函数从一个输入的迭代集合中创建并返回一个新的数组,如数组、地图、集合,并且每个元素都被迭代。
语法是Array.from(collection of objects):
var mySet = new Set([21, 3, 10,21]);
let arrayObj=Array.from(mySet.values());
console.log(arrayObj); //[ 21, 3, 10 ]
console.log(typeof arrayObj); //object