【发布时间】:2015-06-20 16:56:41
【问题描述】:
How to convert Set to Array? 给出了将 Set 转换为 Array 的三个答案,目前在 Chrome 浏览器中均不适用。
假设我有一个简单的集合
var set_var = new Set(['a', 'b', 'c']);
我可以遍历我的变量并将元素添加到一个空数组中
var array_var = [];
set_var.forEach(function(element){array_var.push(element)});
但是有没有其他方法可以得到更广泛的浏览器支持?
【问题讨论】:
-
Set本身就是 ES6 Harmony 的一部分。你不会找到“更广泛的浏览器支持”,因为这暂时是实验性技术。有一些方法可以在没有Array.prototype.forEach的情况下进行迭代,但这些方法首先适用于不支持Set的浏览器。 -
@JonathanSampson 好的,我听到了。那么让我们专注于Chrome。 Chrome 确实支持
Set,只是不支持其他浏览器支持的所有功能。 Chrome中还有其他方法可以将Set转换为数组吗? -
这个怎么样,它更复杂,但如果你只想要另一种方式: var mySet = Set(['a','b','c']); iter = mySet.keys(); for(var i = 0; i