2016-12-13 60 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}`; 
    } 
} 

我想這樣做的就是隻有靜態的變量和方法的名稱;所以在上面的例子中,我想返回num1,num2concat

+0

這些都不是「變量」。他們是「財產」。 –

回答

1

所以,事實證明,您可以使用Object.keys方法來獲取所有附加到類的靜態變量和方法名稱的列表。 ES6課程大多隻是ES5的語法糖。所有靜態屬性都由類繼承,這也適用於子類,我們實際上獲得了子類構造函數和超類構造函數之間的真實原型鏈接。

因此返回所有靜態變量和方法的例子:

Object.keys(FindStatics); 
相關問題