class函數
class 的做用:1. 定義類的 2. 沒有變量提高this
1.在class類上添加的屬性都是在原型prototype上添加的
2.new實例的時候其實就是在調用構造函數的方法
3.類的本質其實就是一個函數
4.類中的this指向實例對象
5.添加的私有屬性都在構造函數中添加
6.每一個構造方法都會默認返回實例對象this,
若是人爲改變this返回值,返回基本數據類型,字符串-數字-等,不會改變return this。
若是返回引用數據類型 obj arr 那麼return this 就會失效,變成你返回的結果了。
7.靜態方法, 在方法前面加上static關鍵字
static ff(){console.log("static")} Person.ff()
那麼這個方法就變成了 類的 私有方法 就得用類方法() spa
繼承prototype
子類繼承父類 使用extends關鍵字
對象
代碼塊裏面須要 super 關鍵字
0.super既能夠充當函數,也能夠充當對象
1.充當函數時,只能在子類的構造函數中使用,且必須放在第一行調用,指向父類的構造函數,
只有super調用以後,子類才能夠使用this關鍵字,指向子類的實例對象
2.充當對象時,放在普通函數中,super指向父類的prototype,
3.放在靜態方法中,super指向當前父類自己blog
module繼承
使用export對外暴露模塊接口接口
使用import引入其餘模塊字符串
import聲明的變量必須放在{}內,變量名必須和暴露的接口變量名一致原型
模塊文件暴露的是什麼,引入文件接收的就是什麼 注意: 暴露的必須是一個變量或者變量集合{a}{a,b,c},不能直接暴露一個數據 總結: 1.export和import是一對,兩者後面都必須帶{}大括號裏面的變量名還必須保持一致。順序無所謂 2.export default和import 也是一對,兩者後面不帶{} 名字不須要一致 3.export default一次只能對外輸出一次 4.export default的本質 是將值賦給變臉default而後暴露接口 全部default後面不能對變量再次聲明 5.export defalut var a 這種寫法是錯的,能夠這樣寫 export default a=12 6.函數沒事 export default function fn(){} === export defalut function(){}