我正在尝试在 JavaScript 中继承对象。看一下这个例子:
var BaseObject = function() {
};
var ChildObject = function() {
};
ChildObject.prototype.childMethod = function() {
};
ChildObject.prototype = new BaseObject();
ChildObject.prototype.constructor = ChildObject();
但是,一旦我进行原型继承,childMethod() 就会消失。我在这里做错了什么?
当您将原型分配给 BaseObject 并且 BaseObject 的原型没有 childMethod 方法时,您正在覆盖原型。
要获得所需的行为,您必须在将原型分配给 BaseObject 后添加 childMethod:
var BaseObject = function() {
};
var ChildObject = function() {
};
ChildObject.prototype = new BaseObject();
ChildObject.prototype.constructor = ChildObject;
ChildObject.prototype.childMethod = function() {
return 'childMethod';
};
c = new ChildObject();
alert(c.childMethod());
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)