如何在javascript中从子类调用父类方法?

12 浏览
0 Comments

如何在javascript中从子类调用父类方法?

我已经花了几个小时试图找到解决方案,但似乎是无望的。

基本上,我需要知道如何从子类中调用父类的方法。

到目前为止,我尝试的所有方法要么不起作用,要么会覆盖父类的方法。

我正在使用以下代码来设置JavaScript中的面向对象编程:

// 设置OOP

// 伪构造函数(空函数)

function surrogateCtor() {}

function extend(base, sub) {

// 将原型从基类复制到子类以设置继承

surrogateCtor.prototype = base.prototype;

sub.prototype = new surrogateCtor();

sub.prototype.constructor = sub;

}

// 父类

function ParentObject(name) {

this.name = name;

}

// 父类的方法

ParentObject.prototype = {

myMethod: function(arg) {

this.name = arg;

}

}

// 子类

function ChildObject(name) {

// 调用父类的构造函数

ParentObject.call(this, name);

this.myMethod = function(arg) {

// 在这里如何调用父类的方法?

// 做一些事情

}

}

// 设置原型链

extend(ParentObject, ChildObject);

我需要先调用父类的方法,然后在子类中添加一些其他内容。

在大多数面向对象的编程语言中,这只需要简单地调用parent.myMethod()

但是我真的无法理解如何在JavaScript中实现。

非常感谢您的帮助!谢谢!

0