ES6-21.class基本構文

1451 ワード

1.概要(詳細は参照)


classは構造関数の文法糖である.
classのconstructorメソッド内の実装は,元の構造関数の実装である.
class内のすべての方法はprototype上にあり,元の構造関数のprototype上のインスタンス共有方法である.
class A {
    constructor() {}
    addNum() {}
}
Object.keys(A.prototype); // []
//  
function B() {};
B.prototype = {
    constructor() {},
    addNum() {}
}
Object.keys(B.prototype); // ["constructor", "addNum"]

⚠10.内部関数へのアクセスには違いがあります.class内部で定義された関数は遍歴できません.関数を構築する遍歴できます.のObject.keys()メソッド.

2.constructorメソッド


classにはconstructorメソッドが必要です.書かないとjsエンジンはconstructorメソッドを自動的に追加します.
class A{}
//  
class A{
    constructor() {} //  
};

constructorメソッドはデフォルトでthisを返します.returnもカスタマイズできます
コンストラクション関数との違い:newが必要です.そうしないと、エラーが発生します.