从构造函数es6调用静态方法

时间:2016-05-03 11:24:37

标签: javascript ecmascript-6 static-methods

当我试图在javascript中从构造函数调用静态方法时,它表示该方法不存在。

class TestClass {

    constructor(){
        this.staticMethod();
    }

    static staticMethod() {

    }
}

如果我尝试从构造函数调用普通方法,这可以正常工作。如果静态方法属于类而不是实例,为什么它不允许它们从构造函数调用?

2 个答案:

答案 0 :(得分:18)

this.constructor.staticMethod()

可以用来避免直接引用类(对类继承和粘贴代码特别有用)。

答案 1 :(得分:11)

你必须这样称呼它:

TestClass.staticMethod()