gpt4 book ai didi

javascript - Node 中的 For-of 循​​环 --harmony 不适用于数组

转载 作者:太空宇宙 更新时间:2023-11-04 01:01:39 25 4
gpt4 key购买 nike

当我使用 --harmony 选项启动 Node v0.11.14 REPL 并尝试 for-of 循​​环时,我得到:

> for (var i of [3, 4, 5]) console.log(i);
TypeError: undefined is not a function

对于集合也是如此。但它与生成器一起工作得很好:

> function* Counter() { var n=3; while (n < 7) { yield n++; } }
> var c = new Counter();
> for (var i of c) console.log(i);
3
4
5
6

虽然第一个例子来自 ecmascript wiki page是:

for (word of ["one", "two", "three"]) {
alert(word);
}

MDN pageTraceur docs包含相同的示例。我无法用谷歌搜索“for-of in nodejs”。它真的应该在 Node 中工作吗?还是我遗漏了一些东西?

最佳答案

for .. of和可迭代对象在 v8 中单独实现。看起来在与 Node 0.11.14 捆绑的 v8 中,您只能将其与生成器一起使用。

您可以查看obj[Symbol.iterator]属性来查看对象是否可迭代,它应该是一个函数。在我使用 v8 3.29.93 构建的 Node 中,一切都按预期工作。因此,您可能必须等待下一个 0.11 版本(或 0.12)。

关于javascript - Node 中的 For-of 循​​环 --harmony 不适用于数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26430644/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com