为了账号安全,请及时绑定邮箱和手机立即绑定

ES6的class能否在父类中指定调用父类自身的方法

ES6的class能否在父类中指定调用父类自身的方法

qq_笑_17 2019-01-28 11:09:55
class A {   x() {  }   y() {      Object.getPrototypeOf(Object.getPrototypeOf(this)).x.call(this) //??   } }class B extends A {   x() {    // 方法重写    }   y() {      super.x()   } }const b = new B() b.y()我知道在子类中用super.x()可以调用父类的方法,但这个方法本身定义在父类中的话应该怎么写?目前用原型链是可以临时解决,但是如果直接new A还是有问题,而且即用class又用原型感觉很奇怪,有没有比较优雅的写法呢?
查看完整描述

1 回答

?
慕无忌1623718

TA贡献1744条经验 获得超4个赞

假设A为父类 B为子类
A类有x和y方法 并且B类也有x和y方法 显然 B类的方法会覆盖A类同名方法
如果你想在B类中调用A类中的同名方法 可以这样做

const b = new B()const x = A.x
x.call(b)

这样就实现了在B类实例中调用父类A的x方法


查看完整回答
反对 回复 2019-01-28
  • 1 回答
  • 0 关注
  • 592 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信