我想从类中获取静态的方法列表。
class Person {
constructor(){
let x = this.getStaticMethods(); // how?? - would return [Person.Emails]
}
static Emails(){
// returns emails
}
}
我需要函数本身(绑定或未绑定)而不仅仅是名称。我怎么能得到这些?
答案 0 :(得分:0)
这样做:
class Person {
constructor(){
let staticMethods = Object.create(null);
for(var attr in Person) {
if(typeof Person[attr] === 'function') {
staticMethods[attr] = Person[attr];
}
}
console.log(staticMethods);
}
static Emails(){
// returns emails
}
}
const p = new Person();
您可能应该将hasOwnProperty
添加到最终版本中,但这样可以帮助您完成大部分工作。 http://codepen.io/anon/pen/BjeMEd