【问题标题】:Closure (JS) Iterators闭包(JS)迭代器
【发布时间】:2012-02-17 11:31:19
【问题描述】:

我在将 Python 生成器转换为 Google Closure 迭代器时遇到了一些问题。

for n,nbrs in nodes_nbrs:
    for nbr,data in nbrs.items():
        yield (n, nbr, data)

我已经关注并卡在其中

var nodeNbrs = map(this.adj.getKeyIterator(), function(n) {
    return [n, this.adj.get(n)]
});
var iter = new Iterator;
iter.next = function() {
    // what do I do?
};

【问题讨论】:

  • 我不知道 Python 但goog.iter.toIterator 可能是您要找的? var iter = goog.iter.toIterator(nodeNbrs); 将为数组返回一个功能齐全的迭代器。
  • 上面的代码迭代了一个列表的元素,这个列表本身就是另一个列表的元素。 nodeNbrs 已经是一个可迭代对象。

标签: javascript iterator google-closure


【解决方案1】:

【讨论】:

    猜你喜欢
    • 2013-01-16
    • 1970-01-01
    • 1970-01-01
    • 2020-11-22
    • 1970-01-01
    • 2018-10-06
    • 2018-05-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多