我想基于原型创建一个继承函数。我有这个JavaScript:
Function.prototype.Inherits = function(parent) {
this.prototype = new parent();
this.prototype.constructor = this;
};
function Base() {};
function Foo() {
this.Inherits(Base);
};
我想要一个与此相同的功能:
Foo.prototype = new Base();
Foo.constructor = Base();
答案 0 :(得分:1)
由于您调用它的方式,Function.prototype.Inherits函数中的this
将是创建的对象,而不是其构造函数(Foo)。您可能希望删除行this.Inherits(Base);
并在Foo声明之后(和之外)添加此行:Foo.Inherits(Base);