我希望使用所谓的 "枚举" 对象作为字典键(实际上,据我所知,它也是一个字典),在 JavaScript 中。
这样不起作用:
这样不起作用:
var State ={DEFAULT:0,ACTIVE:1 ,INACTIVE:2,ALERT:3};
var statesDict = {
State.ACTIVE : {color:0x00ff00}
State.INACTIVE: {color:0x000000}
};
而这一个则做到了:
var State ={DEFAULT:0,ACTIVE:1 ,INACTIVE:2,ALERT:3};
var statesDict = {
1: {color:0x00ff00}
2: {color:0x000000}
};
为什么?难道 State.{prop name}
不应该被替换为其值吗?
var statesDict = { [State.ACTIVE]: {color:0x00ff00}, ... }
。您不能在没有括号的情况下替换属性名称变量。 - Heretic MonkeytoString
函数进行转换。 - schroffl