[英]Javascript convert set to plain Array
示例:迭代集
16行
var myArr = [v for (v of mySet)];
我的代码:
var s_priceCatsArr = [ n for ( n of s_priceCats ) ];
这会在Google Chrome Version 38.0.2125.111 m
上产生错误Uncaught SyntaxError: Unexpected token for
Customise and control Google Chrome > Settings > About
告诉我我的Google Chrome浏览器是最新的。
我是在做错什么,还是不支持此功能?
更新:
我去了chrome://flags
并勾选了Enable Experimental JavaScript
。 然后重新启动我的浏览器,但仍然出现相同的错误。 我想我只需要等到正确添加该功能即可... :(
Chrome尚未(从38.0.2125.111版开始)支持“数组推导”,即[expr of Iterable]
将Iterable
转换为Array
的标准ES6函数是Array.from
,但是在Chrome中也没有。 由于种种原因,我还无法识别MDN垫片是否可以在Set
上工作。 (啊,根据文档,shim不支持“真正的可迭代对象”)
在Firefox中有效但又在Chrome中不起作用的另一种方法是“传播”运算符...
:
> var s = new Set([1,2,3,4])
undefined
> [...s]
[1, 2, 3, 4]
现在可以在Chrome 46(可能更早)中for (x of <Iterable>)
, Array.from
和...
spread运算符进行编辑。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.