所以我通过使用它们的构造函数来定义类,并在这些函数中定义它们的所有属性,并执行构造函数,例如设置侦听器等。在定义了构造函数之后,我将它的所有函数直接添加到它的原型中。
要进行继承,我基本上是这样做的:
namespace.Class = function(param) {
namespace.BaseClass.call(this, param);
//Other constructor stuff
}
namespace.Class.prototype = new namespace.BaseClass();
namespace.Class.constructor = namespace.Class;
问题是在创建原型时会调用 BaseClass 的构造函数,这会导致原型成为该类型的实例。这可能不是问题,但它只是感觉“混乱”和性能滞后,并且可能存在错误,因为我必须检查参数是否已定义。
所以我的问题是:是否可以在不调用其构造函数的情况下扩展基类?还是我必须使用诸如检查是否param
未定义之类的技巧,或者使用循环来做事?
抱歉,如果我错过了原型继承的全部要点,我在 uni 中学习 Java,而 Java 不赞成这种类型的东西。