首页 > 解决方案 > 将数组元素作为属性名称注入时 JavaScript 字典语法错误

问题描述

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

let surveyTypes = [1,2];

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

预期输出:

surveyDuration={1:'first',2:'second'}

实际输出:

未捕获的语法错误:意外的令牌 [

标签: javascriptdictionary

解决方案


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

let surveyTypes = [1,2];

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

console.log(surveyDuration);


推荐阅读