Javascript表达式来定义对象的属性名称?

Kir*_*lla 3 javascript

我想创建这个对象......

object = {
  'object[1][var_name_1]' : 'value1',
  'object[1][var_name_2]' : 'value2',
};
Run Code Online (Sandbox Code Playgroud)

我正在尝试这种方式,但出现错误丢失:在属性 id 之后...

function getPrefix() {
  return 'object[1]';
}

object = {
  getPrefix() + '[var_name_1]' : 'value1',
  getPrefix() + '[var_name_2]' : 'value2',
}
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?或者也许不可能使用js表达式设置对象属性名称?

谢谢

Jak*_*kob 5

您无法使用文字语法设置变量属性,但可以[]在创建对象后使用 , 设置属性:

myObject = {}
myObject["any_string_here"] = myValue
Run Code Online (Sandbox Code Playgroud)