1. 程式人生 > >ECMA6 中class的屬性定義相關問題

ECMA6 中class的屬性定義相關問題

1 話不多說  上程式碼:
class calculators{
    constructor(){//實力屬性
        this.num1 = 0;
        this.num2 = "cahiheng";
    }
    $(tag){
        return  document.getElementById(tag)
    }    
    init(){
        console.log(this.num1);
        console.log(this.num2)
        console.log(this.constructor.prop1)
    }

}
calculators.prop = 1;//靜態屬性
calculators.prop1 = 2;
calculators.prop2 = 3;
const calculator = new calculators()
calculator.init()

執行結果:


1 總結一下   es6中類的建立要注意contrators的引用  一般來說 屬性都是通過contrators掛在到類上的。兩者的取值方式略有不同。靜態屬性要通過原型鏈來取值。而非靜態屬性則直接可以通過方法名字來取值。