2017-02-10 7 views
2

ES6クラスの構文を使用して、現在のクラスの新しいインスタンスを親から作成できますか?例:ES6クラス:親クラスから子クラスのコンストラクタにアクセスすることは可能ですか?

class Base { 
    withFoo() { 
     return new self({ foo: true }); 
    } 
} 

class Child extends Base {} 

(new Child()).withFoo(); 

私はPHPのnew self()の構文に似たものを探しています。

+1

JavaScriptでは、 "class" *はコンストラクタです。 – 4castle

+0

この動作をしたい理由は何ですか? – Mjh

+0

@Mjh基本クラスにカスタムコンストラクタ(ファクトリメソッドなど)を含める状況。私の場合は、基本クラスから不変オブジェクトを操作するメソッドが必要です。 – mkrause

答えて

5

現在のインスタンスのコンストラクタには、this.constructorでアクセスできます。

関連する問題