如何在ecma 6中从'this'获取'instance'(class)

时间:2016-11-23 16:32:33

标签: node.js ecmascript-6

我的意思是不将类的名称作为字符串,我需要完全静态的实例。

class Secret {

   createNewClassFromConstructorName()
   {
       let className = this.constructor.name;

       return new className();
   }
}


let secret = new Secret();

但我不想创建一些属性,比如'this.self = Secret或this.instance = Secret'或返回实例的方法。我想从'this'语句中访问它们。并运行此方法:

secret.createNewClassFromConstructorName();

当'className'不是构造函数时,我得到错误。

1 个答案:

答案 0 :(得分:0)

只需使用constructor属性作为构造函数!

createNewClassFromConstructorName() {
   return new this.constructor;
}