2016-12-13 9 views
1

オブジェクトに関連付けられたすべてのキー名のリストを返すObject.keysメソッドと同様に、クラスに関連付けられたすべての静的変数名とすべての静的メソッド名を返す方法はありますか?TypescriptまたはES6でクラスのすべての静的変数およびメソッドを表示する方法はありますか?

活字体例:私がやりたい何

class FindStatics { 
    static num1:string = 'Num 1'; 
    static num2:string = 'Num 2'; 
    notStatic:string = "I'm not static"; 
    static concat():string { 
    return `${FindStatics.num1} loves ${FindStatics.num2}` 
    } 
    addToNonStatic(str:string):string { 
    return `${this.notStatic} + ${str}`; 
    } 
} 

が唯一の静的変数の名前とメソッド名を取得することです。上記の例では、num1num2、およびconcatが返されます。

+0

これらは、「変数」ではありません。それらは「特性」である。 –

答えて

1

このように、Object.keysメソッドを使用すると、クラスに関連付けられたすべての静的変数とメソッド名のリストを取得できます。 ES6クラスはほとんどがES5への文法上の砂糖です。すべての静的プロパティはクラスによって継承されますが、これもサブクラス化に使用されます。実際には、サブクラスのコンストラクタ関数とスーパークラスのコンストラクタの間に実際のプロトタイプリンクがあります。したがって、例えば、すべての静的変数やメソッド名を返すために

Object.keys(FindStatics); 
関連する問題