我有一个类调用其他方法的方法:ES6:如果类有方法?
class MyClass {
build(methods) {
methods.forEach((method) => {
if (this.method) {
this.method();
}
});
}
stuff() {}
moreStuff() {}
}
const a = MyClass();
a.build(['stuff', 'moreStuff']);
我一直没能找到对任何类的特殊方法的任何引用。我的第一个想法是使用hasOwnProperty
(但eslint让我觉得我不应该在课堂上使用它)。上面的方法不能可靠地工作,因为类具有内置函数。
我也在寻找Reflect,因为这可能是我的挽救优雅,但我真的可以使用一些关于此场景最佳实践的指导吗?
向我们展示如何打算调用'build',请 – Bergi
“*没有提及任何特殊的类的方法*” - 这是因为类没什么特别的,并且不需要任何特殊的方法。它们只是与'.prototype'对象一样的构造函数(尽管它们的原型方法不是可枚举的)。 – Bergi
@Bergi我明白,他们只是语法糖,但我真的希望他们会有一些很酷的内省方法。我更新了我的代码。我猜我应该重构并将'build'方法分离为一个函数,然后使用某种'Reflect'。 –