如何在javascript中从子类调用父方法?
2022-08-30 01:02:06
在过去的几个小时里,我一直试图找到解决问题的方法,但似乎毫无希望。
基本上,我需要知道如何从子类调用父方法。到目前为止,我尝试过的所有东西最终都无法正常工作或覆盖父方法。
我正在使用以下代码在javascript中设置OOP:
// SET UP OOP
// surrogate constructor (empty function)
function surrogateCtor() {}
function extend(base, sub) {
// copy the prototype from the base to setup inheritance
surrogateCtor.prototype = base.prototype;
sub.prototype = new surrogateCtor();
sub.prototype.constructor = sub;
}
// parent class
function ParentObject(name) {
this.name = name;
}
// parent's methods
ParentObject.prototype = {
myMethod: function(arg) {
this.name = arg;
}
}
// child
function ChildObject(name) {
// call the parent's constructor
ParentObject.call(this, name);
this.myMethod = function(arg) {
// HOW DO I CALL THE PARENT METHOD HERE?
// do stuff
}
}
// setup the prototype chain
extend(ParentObject, ChildObject);
我需要先调用父级的方法,然后在子类中向其添加更多内容。
在大多数OOP语言中,这就像调用一样简单,但我真的无法理解它在javascript中是如何完成的。parent.myMethod()
任何帮助都非常感谢,谢谢!