我正在尝试执行以下操作:
var Colors = {
'BLUE ': 1,
'RED' : 2,
'YELLOW' : 3
};
var Boxes = {
Colors.BLUE : 5,
Colors.RED : 1,
Colors.YELLOW : 0
};
console.log(Boxes);
但是,我收到以下错误:
Uncaught SyntaxError: Unexpected token .
如何引用 Colors
定义时对象 Boxes
?
我想仅使用对象文字语法来执行此操作。谢谢。
最佳答案
您必须更详细并使用方括号表示法来定义变量属性名称:
var Colors = {
'BLUE' : 1,
'RED' : 2,
'YELLOW' : 3
};
var Boxes = {};
Boxes[Colors.BLUE] = 5;
Boxes[Colors.RED] = 1;
Boxes[Colors.YELLOW] = 0;
console.log(Boxes);
但是在 ES2015 中,您可以使用表达式来初始化对象键,这称为 Computed property names :
var Boxes = {
[Colors.BLUE] : 5,
[Colors.RED] : 1,
[Colors.YELLOW] : 0
};
关于javascript - 在 Javascript 中定义对象文字时如何引用对象属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32727020/