SyntaxError: missing } after property list

当在某个地方的 对象初始化器 语法中出现错误时,就会出现 JavaScript 异常“属性列表后缺少 }”。实际上可能是缺少花括号,但也可能是缺少逗号。

消息

SyntaxError: missing } after property list (Firefox)
SyntaxError: Unexpected identifier 'c'. Expected '}' to end an object literal. (Safari)

错误类型

哪里出错了?

在某个地方的 对象初始化器 语法中出现错误。实际上可能是缺少花括号,但也可能是缺少逗号,例如。还要检查所有闭合的花括号或圆括号是否按正确的顺序排列。稍微美化一下代码的缩进或格式可能会帮助你理清思路。

示例

忘记逗号

通常,对象初始化器代码中缺少逗号

js
const obj = {
  a: 1,
  b: { myProp: 2 }
  c: 3
};

正确的方式是

js
const obj = {
  a: 1,
  b: { myProp: 2 },
  c: 3,
};

另请参阅