ECMAScript2015以降では、プロパティと変数名が同じであれば、オブジェクトのプロパティへの割り当てが簡単に書けるようになっている。
1 2 3 4 5 6 7 8 9 10 11 12 |
//従来のJavaScriptでの書き方 let id = '0001'; let name = '太郎'; let customer1 = {id : id, name : name};//{id = id, name = name }; //ECMAScipt2015以降で可能になった書き方 id = '0002'; name = '次郎'; let customer2 = {id, name}; //オブジェクトへのプロパティ設定方法が簡略化されている。 console.log(customer1); //{id: "0001", name: "太郎"} console.log(customer2); //{id: "0002", name: "次郎"} |
この性質を利用して、コンストラクターでの初期値設定を以下のように簡略化することができる。
1 2 3 4 5 6 7 8 9 10 11 |
class Sample { constructor(val1, val2, val3) { Object.assign(this, {val1, val2, val3}); } printInfo() { console.log(`${this.val1}, ${this.val2}, ${this.val3}`); } } var sample = new Sample(1, 2, 3); sample.printInfo(); |