将数组元素作为属性名称注入时,JavaScript字典语法错误

Ish*_*jaz 2 javascript dictionary

我正在运行此代码,但它给出了奇怪的结果?

let surveyTypes = [1,2];

let surveyDuration = {
  surveyTypes[0]:  'first',surveyTypes[1]:  'second' 
}
Run Code Online (Sandbox Code Playgroud)

预期产出:

surveyDuration={1:'first',2:'second'}
Run Code Online (Sandbox Code Playgroud)

实际产量:

未捕获的SyntaxError:意外的令牌[

Mih*_*nut 5

您必须wrap将数组的项放入括号中,因为您正在创建dynamic键.

let surveyTypes = [1,2];

let surveyDuration = {
  [surveyTypes[0]]:  'first',[surveyTypes[1]]:  'second' 
}

console.log(surveyDuration);
Run Code Online (Sandbox Code Playgroud)