Erro de Sintaxe: faltando : depois da propriedade id
Mensagem
SyntaxError: missing : after property id
Tipo de erro
O que deu errado?
Ao criar objetos com a sintaxe do iniciador do objeto, dois pontos (:
) separam chaves e valores para as propriedades do objeto.
var obj = { propertyKey: "value" };
Exemplos
Dois-pontos contra sinal de igualdade
Este código falha, pois o sinal de igualdade não pode ser usado dessa maneira nesta sintaxe do iniciador do objeto.
var obj = { propertyKey = 'value' };
// SyntaxError: missing : after property id
Correto seria usar um dois-pontos, ou usar colchetes para atribuir uma nova propriedade depois que o objeto já foi criado.
var obj = { propertyKey: "value" };
// or alternatively
var obj = {};
obj["propertyKey"] = "value";
Propriedades vazia
Você não pode criar propriedades vazias como esta:
var obj = { propertyKey; };
// SyntaxError: missing : after property id
Se você precisa definir uma propriedade sem um valor, você pode usar null
como um valor.
var obj = { propertyKey: null };
Propriedades computadas
Se você criar uma chave de propriedade de uma expressão, você precisa usar colchetes. Caso contrário, o nome da propriedade não pode ser computado:
var obj = { 'b'+'ar': 'foo' };
// SyntaxError: missing : after property id
Coloque a expressão entre parênteses []
:
var obj = { ["b" + "ar"]: "foo" };