示例:迭代集
第16行
var myArr = [v for (v of mySet)];
我的代码:
var s_priceCatsArr = [ n for ( n of s_priceCats ) ];
这会在Uncaught SyntaxError: Unexpected token for
Google Chrome Version 38.0.2125.111 m
Customise and control Google Chrome > Settings > About
告诉我,我的Google Chrome浏览器是最新的。
我做错了还是不支持此功能?
更新:
我前往chrome://flags
并勾选Enable Experimental JavaScript
。然后重新启动我的浏览器,但我仍然得到相同的错误。我想我只需要等到该功能正确添加然后...... :(
答案 0 :(得分:2)
Chrome还没有(自版本38.0.2125.111起)支持“数组理解”,即[expr of Iterable]
将 Iterable
转换为Array
的标准ES6功能是Array.from
,但这还不在Chrome中。由于我还没有看出原因,我无法让MDN垫片在Set
上工作。 (啊,根据文件,垫片不支持“真正的迭代”)
另一种适用于Firefox的方法是(但又不是Chrome),它是“传播”运算符...
:
> var s = new Set([1,2,3,4])
undefined
> [...s]
[1, 2, 3, 4]
Chrome 46中的 编辑(可能更早)所有for (x of <Iterable>)
,Array.from
和...
点差运营商现在都可以使用。