2018-04-09-class

weixin_34402408發表於2018-04-09

今兒沒有工作,看了class的基本用法和class的繼承,

才理解react專案中 以下寫法的真正含義,之前只是照搬照抄,並沒有真正理解。

6896091-f5f857cba799a367.png

ES5 的繼承,實質是先創造子類的例項物件this,然後再將父類的方法新增到this上面(Parent.apply(this))。ES6 的繼承機制完全不同,實質是先創造父類的例項物件this(所以必須先呼叫super方法),然後再用子類的建構函式修改this。

如果子類沒有定義constructor方法,這個方法會被預設新增,程式碼如下。也就是說,不管有沒有顯式定義,任何一個子類都有constructor方法。

阮一峰-class的基本用法 阮一峰-class的繼承