在JavaScript中,如果子类和父类都有同名的函数,但想要调用父类中的函数,而不是子类中的函数,可以通过以下几种方法实现:
class Parent {
sayHello() {
console.log('Hello from parent');
}
}
class Child extends Parent {
sayHello() {
super.sayHello(); // 调用父类中的同名函数
console.log('Hello from child');
}
}
const child = new Child();
child.sayHello();
输出:
Hello from parent
Hello from child
推荐的腾讯云相关产品和产品介绍链接地址:暂无推荐。
function Parent() {}
Parent.prototype.sayHello = function() {
console.log('Hello from parent');
}
function Child() {}
Child.prototype = Object.create(Parent.prototype); // 继承父类的原型链
Child.prototype.constructor = Child;
Child.prototype.sayHello = function() {
Parent.prototype.sayHello.call(this); // 调用父类中的同名函数
console.log('Hello from child');
}
const child = new Child();
child.sayHello();
输出:
Hello from parent
Hello from child
推荐的腾讯云相关产品和产品介绍链接地址:暂无推荐。
function Parent() {}
Parent.prototype.sayHello = function() {
console.log('Hello from parent');
}
function Child() {
Parent.call(this); // 调用父类中的同名函数
}
Child.prototype = Object.create(Parent.prototype); // 继承父类的原型链
Child.prototype.constructor = Child;
Child.prototype.sayHello = function() {
console.log('Hello from child');
}
const child = new Child();
child.sayHello();
输出:
Hello from parent
Hello from child
推荐的腾讯云相关产品和产品介绍链接地址:暂无推荐。
以上是调用父类中的父函数而不是子类中的函数的几种方法。通过使用这些方法,我们可以实现在JavaScript中灵活地调用父类的函数,以满足不同的需求。
领取专属 10元无门槛券
手把手带您无忧上云