MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

SyntaxError: missing : after property id

メッセージ

SyntaxError: missing : after property id

エラータイプ

SyntaxError

何がうまくいかなかったのか?

オブジェクト初期化子構文でオブジェクトを生成する場合、オブジェクトのプロパティのキーと値をコロン (:) で区切ります。

var obj = { propertyKey: 'value' };

コロン vs. 代入記号

この方法で代入記号をオブジェクト初期化子構文として使用できないため、このコードは失敗します。

var obj = { propertyKey = 'value' };
// SyntaxError: missing : after property id

正しくはコロンを使用するか、オブジェクトを生成した後に角括弧を使用して新しいプロパティを割り当てます。

var obj = { propertyKey: 'value' };

// または

var obj = { };
obj['propertyKey'] = 'value';

空のプロパティ

このような方法で空のプロパティを生成できません:

var obj = { propertyKey; };
// SyntaxError: missing : after property id

値がないプロパティを定義する必要がある場合、値として null を使用します。

var obj = { propertyKey: null };

計算されたプロパティ

式からプロパティキーを生成する場合、角括弧を使用します。そうしなければ、プロパティ名は計算できません:

var obj = { 'b'+'ar': 'foo' };
// SyntaxError: missing : after property id

式を括弧 [] に入れます:

var obj = { ['b'+'ar']: 'foo' };

関連項目

ドキュメントのタグと貢献者

 このページの貢献者: YuichiNukiyama
 最終更新者: YuichiNukiyama,