TypeScript class 构造函数和成员的初始化顺序
生活随笔
收集整理的這篇文章主要介紹了
TypeScript class 构造函数和成员的初始化顺序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
看下面這段代碼:
class Base {name = "base";constructor() {console.log("My name is " + this.name);} }class Derived extends Base {name = "derived"; }// Prints "base", not "derived" const d = new Derived();輸出的是 base,而不是 derived:
這是因為 JavaScript 下列的初始化規則:
- 基類的成員初始化
- 基類的構造函數初始化
- 子類的成員初始化
- 子類的構造函數初始化
這意味著基類構造函數在它自己的構造函數中看到了它自己的 name 值,因為派生類的字段初始化還沒有運行。
總結
以上是生活随笔為你收集整理的TypeScript class 构造函数和成员的初始化顺序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TypeScript 里的 class
- 下一篇: 飞机7700紧急代码是什么意思(专注动漫