ES6:如果班级有方法?

时间:2016-09-22 22:11:08

标签: ecmascript-6

我有一个带有调用其他方法的方法的类:

Service<T>

我无法找到关于类的任何特殊方法的任何参考。我的第一个想法是使用var userService = new Service<User>(new UserRepository()); (但是,我不应该唠叨我不应该在课堂上使用它)。由于类具有内置函数,因此上述方法无法可靠地工作。

我也认为Reflect可能是我的拯救恩典,但我真的可以使用一些指导来说明这种情况的最佳做法是什么?

1 个答案:

答案 0 :(得分:3)

我认为你正在寻找

build (methodnames) {
    for (const methodname of methodnames) {
        if (typeof this[methodname] == "function") {
            this[methodname]();
        }
    }
}

课程没有什么特别之处 - 实际上你应该忽略它们。如果你想调用某个方法,唯一重要的是有一个函数作为属性值。方法是否是创建实例的类的原型对象的自己的属性无关紧要。