鉴于如下所示的课程,我可以console.log
完成所有PropertyNames
class Security {
constructor(param: ParamType) {
this.method1(param);
...
this.methodN(param);
}
method1(param){...};
...
methodN(param){...};
}
Object.getOwnPropertyNames(Security.prototype).forEach( (value) => {
console.log('Method: ', value);
// value()?
});
我的问题是如何在// value()?
答案 0 :(得分:6)
你可以这样写:
class Security {
method1(param) {
console.log("M1");
}
method2(param) {
console.log("M2");
}
}
function callAll() {
Object.getOwnPropertyNames(Security.prototype).forEach(value => {
if (value !== 'constructor' && typeof Security.prototype[value] === 'function')
this[value]();
});
}
callAll.apply(new Security())