Javascript 子类中的实例方法可以调用它的父类静态方法吗?

GN。

这不起作用。JS 中的子类是否可以访问其父类静态方法?

class Person {
    constructor() {}

    static isHuman() {
        return 'yes I am';
    }
}


class Brian extends Person {
    constructor() {
        super();
    }

    greeting() {
        console.log(super.isHuman())
    }
}

const b = new Brian();
b.greeting();
帕特里克·埃文斯

是的你可以。您可以使用super但要获得静态方法,您必须访问它的构造函数属性:

super.constructor.isHuman()

也可以直接使用类名:

Person.isHuman();
//this works because Brian inherits the static methods from Person
Brian.isHuman();

或者沿着原型链向上

//would be referencing Brian
this.constructor.isHuman();
//would be referencing Person
this.__proto__.constructor.isHuman();
Object.getPrototypeOf(this).constructor.isHuman();

演示

class Person {
  constructor() {}
  static isHuman() {
    return 'yes I am';
  }
}

class Brian extends Person {
  constructor() {
    super();
  }
  greeting() {
    console.log("From super: ", super.constructor.isHuman())
    console.log("From class name (Brian): ", Brian.isHuman())
    console.log("From class name (Person): ", Person.isHuman())
    console.log("From prototype chain: ", this.constructor.isHuman())
    console.log("From prototype chain: ", Object.getPrototypeOf(this).constructor.isHuman())
  }
}

const b = new Brian();
b.greeting();

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在JavaScript类中调用父方法,但stll可以访问对象实例内部的原型方法吗?

来自分类Dev

JavaScript中的静态方法可以调用非静态方法吗

来自分类Dev

javascript对象可以覆盖其父方法并在该方法中调用它吗?

来自分类Dev

无法在 JavaScript 中调用父类方法

来自分类Dev

JavaScript:使用子类的父方法?

来自分类Dev

从父类中的静态方法访问子类中定义的属性-javascript

来自分类Dev

实例化类时,如何理解JavaScript静态方法也不可调用。

来自分类Dev

父类可以调用孙子类的方法吗?

来自分类Dev

我可以加快对JavaScript中本机方法的调用吗?

来自分类Dev

我可以加快对JavaScript中本机方法的调用吗?

来自分类Dev

我可以加快对JavaScript中本机方法的调用吗?

来自分类Dev

JavaScript中的继承:调用父级的方法

来自分类Dev

JavaScript 中的函数可以作为 Object 的实例调用吗?

来自分类Dev

javascript调用类方法

来自分类Dev

JavaScript中的静态方法

来自分类Dev

如何从python中的子类静态方法访问父类实例方法?

来自分类常见问题

我可以使用超类的类工厂静态方法创建子类实例吗?

来自分类Dev

子类可以从 Python 中的父类继承实例变量吗?

来自分类Dev

Javascript 中的继承 - 来自子方法的父方法调用

来自分类Dev

方法可以吗?在javascript文件中

来自分类Dev

可以重写(隐藏)非虚拟方法,但仍从子类中显式调用它吗?

来自分类Dev

将Scala.js类实例传递给JavaScript,该JavaScript将调用函数调用方法

来自分类Dev

Javascript继承静态和实例方法/属性

来自分类Dev

从JavaScript中的“父”对象调用“私有”方法

来自分类Dev

有什么方法可以从javascript调用bigquery API函数吗?

来自分类Dev

嵌套类中的NodeJs / Javascript访问父方法

来自分类Dev

Javascript对象可以在构造过程中调用自己的方法吗?

来自分类Dev

从Ruby中的子类方法调用父类中的方法

来自分类Dev

Javascript:使用此方法在类中调用方法

Related 相关文章

  1. 1

    在JavaScript类中调用父方法,但stll可以访问对象实例内部的原型方法吗?

  2. 2

    JavaScript中的静态方法可以调用非静态方法吗

  3. 3

    javascript对象可以覆盖其父方法并在该方法中调用它吗?

  4. 4

    无法在 JavaScript 中调用父类方法

  5. 5

    JavaScript:使用子类的父方法?

  6. 6

    从父类中的静态方法访问子类中定义的属性-javascript

  7. 7

    实例化类时,如何理解JavaScript静态方法也不可调用。

  8. 8

    父类可以调用孙子类的方法吗?

  9. 9

    我可以加快对JavaScript中本机方法的调用吗?

  10. 10

    我可以加快对JavaScript中本机方法的调用吗?

  11. 11

    我可以加快对JavaScript中本机方法的调用吗?

  12. 12

    JavaScript中的继承:调用父级的方法

  13. 13

    JavaScript 中的函数可以作为 Object 的实例调用吗?

  14. 14

    javascript调用类方法

  15. 15

    JavaScript中的静态方法

  16. 16

    如何从python中的子类静态方法访问父类实例方法?

  17. 17

    我可以使用超类的类工厂静态方法创建子类实例吗?

  18. 18

    子类可以从 Python 中的父类继承实例变量吗?

  19. 19

    Javascript 中的继承 - 来自子方法的父方法调用

  20. 20

    方法可以吗?在javascript文件中

  21. 21

    可以重写(隐藏)非虚拟方法,但仍从子类中显式调用它吗?

  22. 22

    将Scala.js类实例传递给JavaScript,该JavaScript将调用函数调用方法

  23. 23

    Javascript继承静态和实例方法/属性

  24. 24

    从JavaScript中的“父”对象调用“私有”方法

  25. 25

    有什么方法可以从javascript调用bigquery API函数吗?

  26. 26

    嵌套类中的NodeJs / Javascript访问父方法

  27. 27

    Javascript对象可以在构造过程中调用自己的方法吗?

  28. 28

    从Ruby中的子类方法调用父类中的方法

  29. 29

    Javascript:使用此方法在类中调用方法

热门标签

归档