似乎 Nodejs 0.10.20 中的 Map 已损坏。我用 --harmony (包括 --harmony_collections 标志)启动它。
如需参考,请查看http://dailyjs.com/2012/10/15/preparing-for-esnext/。
下面的示例在 Firefox 20.0 中运行。
在 Nodejs 控制台中,我执行以下操作
> var map = new Map([ ["name", "Nicholas"], ["title", "Author"]]);
未定义
> 地图
{}
所以构造函数初始化似乎不起作用。然后我按照 Firefox 示例进行操作,但它们大多不起作用:
> console.log(map.has("name")); // true
false
undefined
> console.log(map.get("name")); // "尼古拉斯"
undefined
undefined
> console.log(map.has("title")); // true
false
undefined
> console.log(map.get("title")); // “作者”
undefined
undefined
> console.log(map.size()); // 2
TypeError: Object # has no method 'size'
at repl:1:17
at REPLServer.self.eval (repl.js:110:21)
at repl.js:249:20
at REPLServer.self.eval (repl .js:122:7)
在接口。(repl.js:239:12)
在接口。
在 Interface._onLine (readline.js:202:10)
在 Interface._line (readline.js:531:8)
在 Interface._ttyWrite (readline.js:760:14)
在 ReadStream.onkeypress (readline.js:99: 10)
我很困惑这些基本的 Map 方法不起作用。我有 Nodejs 版本 0.10.20