ECMAScript 2015 より、オブジェクトイニシャライザのメソッド定義のための短い構文が導入されましたこれは、メソッドの名前に割り当てられた関数の省略形です。
// 算出されたキーも使用可能:簡略構文は、ECMAScript 第 5 版で導入された や 構文に似ています
次のコードを例にすると:
これを以下のように短縮することができます:
注記: 簡略構文では、無名関数( …foo: function() {}
… のような)の代わりに名前付き関数を使用します。名前付き関数は関数の本体から呼び出すことができます(無名関数では、参照するための識別子がないため不可能です)詳しくは をご覧ください。
短縮形ジェネレーターメソッド
は同様に簡略構文を使用して定義することができます簡略構文ではジェネレータープロパティ名の前にアスタリスク (*)が 必要です。すなわち、* g(){}
は動作しますが、g *(){}
は動作しません
// 名前付きプロパティを使用 (ES6 より前) // 簡略構文を使用して同じオブジェクトを生成
は短縮形を使用して定義することができます。
// 名前付きプロパティ // 簡略構文を使用して同じオブジェクトを生成
Async ジェネレーターメソッド
は 関数にすることができます // 簡略構文を使用して同じオブジェクトを生成
メソッド定義はコンストラクタブルではない
すべてのメソッド定義はコンストラクタではないため、インスタンス化しようとすると が発生します。
計算されたプロパティ名
簡略構文は計算されたプロパティ名もサポートします
- ユーザーが明示的にこの機能を有効にしなければなりません。
- ユーザーが明示的にこの機能を有効にしなければなりません