オブジェクト初期化における動的プロパティ名
非リテラル キー名を使用してオブジェクトを初期化するときに問題が発生する可能性があります。たとえば、次のコードは失敗し、予期された ':' 文字に関するエラー メッセージが表示されます:
var KEYS = {} ; KEYS.PHONE_TYPE = 'phone-type'; KEYS.AGENT_TYPE = 'agent-type'; var myAppConfig = { ... iconMap : { KEYS.PHONE_TYPE : 'icon-phone', KEYS.AGENT_TYPE : 'icon-headphones' }; ... };
ES6 のソリューション
ES6 構文、動的プロパティ名の使用角括弧を使用して作成できます。更新されたコードは次のようになります。
iconMap : { [KEYS.PHONE_TYPE] : 'icon-phone', [KEYS.AGENT_TYPE] : 'icon-headphones' };
このアプローチでは、目的のプロパティ名を角括弧で囲むことにより、動的なプロパティ名を持つオブジェクトを作成できます。
以上がJavaScript でオブジェクトを初期化するときに動的プロパティ名を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。