【发布时间】:2014-12-30 10:29:17
【问题描述】:
如何在 Coffeescript 中迭代 ES6 Map 或 Set?
在 Javascript 中可以使用例如
s = new Set()
s.add({a: 1})
for (x of s) {
console.log(x);
}
但是,Coffeescript 有自己的 of 运算符,可以转换为 in,即:
console.log(x) for x of s
变成... for (x in s) { ... }。
如何在 Coffeescript 中访问 Javascript 的 of 运算符?
可以通过循环s.values().next() 来编写自己的自定义迭代器,但那将是可憎的。 :)
【问题讨论】:
-
我不认为你真的可以。您可以使用高阶函数,它无需调用括号,几乎与本机语法一样干净。
-
@dandavis:你的意思是例如
s.forEach (x) -> console.log(x)? -
是的,类似的,您可能需要自己的函数来处理对象/集输入...
标签: javascript coffeescript ecmascript-6