Node.JS v0.11.3 声称支持带有 --harmony_symbols
标志的 ECMAScript 6 符号(参见 here )。最新稿says
Properties are identified using key values. A key value is either an ECMAScript String value or a Symbol value.
我试过下面的例子
var mySymbol = new Symbol('Test symbol');
console.log(mySymbol.name); // prints 'Test symbol', as expected
var a = {};
a[mySymbol] = 'Hello!';
最后一行出错了
TypeError: Conversion from symbol to string
符号是如何工作的?我的示例是错误的,还是 Node.JS 实际上不支持符号?
最佳答案
你应该在没有 new
的情况下尝试:
var mySymbol = Symbol('Test symbol');
console.log(mySymbol.name); // prints 'Test symbol', as expected
var a = {};
a[mySymbol] = 'Hello!';
关于javascript - 符号是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17536134/