JavaScript Class super 关键词

实例

创建一个名为 "Model" 的类,该类将通过使用 extends 关键字继承 "Car" 类的方法。

通过在构造方法中调用 super() 方法,我们将调用父类的构造方法,并可以访问父类的属性和方法:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <h2>JavaScript 类继承</h2>
  5. <p>使用 “extends” 关键字从另一个类继承所有方法。</p>
  6. <p>使用 “super” 方法调用父级的构造函数。</p>
  7. <p id="demo">
  8. <script>
  9. class Car {
  10. constructor(brand) {
  11. this.carname = brand;
  12. }
  13. present() {
  14. return 'I have a ' + this.carname;
  15. }
  16. }
  17. class Model extends Car {
  18. constructor(brand, mod) {
  19. super(brand);
  20. this.model = mod;
  21. }
  22. show() {
  23. return this.present() + ', it is a ' + this.model;
  24. }
  25. }
  26. mycar = new Model("Tesla", "Model3");
  27. document.getElementById("demo").innerHTML = mycar.show();
  28. </script>
  29. </body>
  30. </html>

定义和用法

super 关键字引用父类。

它用于调用父类的构造函数并访问父类的属性和方法。

提示:要更好地理解“继承”的概念(父类和子类),请阅读我们的 JavaScript 类教程


浏览器支持

关键字
super42.013.045.09.036.0

语法

  1. super(arguments); // 调用父构造函数(仅在构造函数内)
  2. super.parentMethod(arguments); // 调用父方法

技术细节

JavaScript 版本:ECMAScript 2015 (ES6)

分类导航