ES6——Class 的基本使用
阿新 • • 發佈:2018-08-05
this關鍵字 .proto 報錯 繼續 nbsp 而且 ret 默認方法 pan
Class 語法。
class 關鍵字聲明一個類,之後以這個類來實例化對象。
const Miaov=function(a,b){ this.a=a; this.b=b; return this; } Miaov.prototype={ constructor:Miaov, print: function(){ console.log(this.a + ‘ ‘ + this.b); } } const miaov=new Miaov("hello "," world"); miaov.print();///打印 hello world class Miaov{ constructor(a,b){ this.a=a; this.b=b; return this; } print(){ console.log(this.a + ‘ ‘ + this.b); } }
//1、Miaov中的 constructor 方法是構造方法,this關鍵字則代表實例對象。也就是說,ES5的構造函數Miaov,對應ES6的miaov這個類的構造方法。
//2、miaov這個類除了構造方法,還定義了一個print 方法。註意,定義 “類” 的方法的時候,前面不需要加上function這個關鍵字,直接把函數 定義放進去了 就可以了。另外,方法之間不需要逗號分割,加了會報錯。
//3、構造函數的prototype屬性,在ES6 的“類” 上面繼續存在。而且類的所有方法都定義在類的 prototype屬性上面。
console.log(Miaov.prototype);
//4、定義在類中的方法都是不可以枚舉的。
console.log(Object.keys(Miaov.prototype));
//5、constructoy 方法是類的默認方法,通過new命令生成對象實例時,自動調用該方法。一個類必須有 constructor方法,如果沒有顯示定義,一個控的constructor放啊會被默認添加。
class P{}; const p=new P{}; console.log(p);
以上。
ES6——Class 的基本使用