在Node v.0.12中,是否有任何迭代Map()的方法?

时间:2014-01-17 18:19:03

标签: node.js map ecmascript-harmony

如果你创建一个Map(),有什么方法可以迭代它吗?我知道Node 0.12还没有出来,但0.11.x很顺便,我无法在devel分支中找到它,

var m = new Map();
m.set('foo', 'bar');

在不知道'foo'的情况下,有没有发现钥匙已经设定?是否有.keys()或任何对象允许这样做,或者我们运气不好,直到v8获得更多的ES6,然后释放节点0.14。

1 个答案:

答案 0 :(得分:0)

Node.js 0.12和iojs(自其初始发布以来)都实现了Map和Set实例的迭代。使用Map个实例例如:

for (let entry of map) {
    // Do something with entry, which looks like [key, val]
}

map.forEach(function (val, key) {
    // Do something with key and val.
});

如果只想迭代键或仅迭代值,那么有一些辅助方法可以返回名为keysvalues的迭代器来执行此操作。