開発環境
- typescript (v 3.7.5)
- ts-node (v 8.5.4)
javascriptのように書くと
class Member {
public name: string;
protected age: number;
constructor(name: string, age: number) {
this.name = name;
this.age = age;
}
}
typescriptで書くと
class Member {
constructor(public name: string, protected age: number) {}
}
// constructor(アクセス修飾子 引数名: 引数の型名) {
// }
※アクセス修飾子のデフォルトは「public」ですが、初期化をする上記の場合、省略できない。
※今回のようにインスタンスメンバーの作成と初期化を1箇所で行う
処理を**「パラメータープロパティ宣言」**と呼ばれています。
まとめ
初期化処理をシンプルに記述できますね。
**「アクセス修飾子をコンストラクタの引数に書くだけで
typescriptでは自動で初期化処理まで実行してくれる」**ことをしっかり理解しておきたいと思います。