📜  如何在 JavaScript 中调用父类的构造函数?(1)

📅  最后修改于: 2023-12-03 15:38:18.082000             🧑  作者: Mango

如何在 JavaScript 中调用父类的构造函数?

在 JavaScript 中,使用 class 定义类是一种方便的方式。当我们创建一个子类时,有时需要调用父类的构造函数来初始化父类的属性。本文将介绍如何在 JavaScript 中调用父类的构造函数。

使用 super()

在 JavaScript 中,可以使用 super() 函数来调用父类的构造函数。在子类的构造函数中调用 super() 可以将子类的实例初始化为父类实例的副本,并且子类也可以继承父类的属性和方法。

class Animal {
  constructor(name) {
    this.name = name;
  }
}

class Dog extends Animal {
  constructor(name, breed) {
    // Call Animal's constructor
    super(name);
    this.breed = breed;
  }
}

const myDog = new Dog('Rufus', 'Labrador');
console.log(myDog.name);  // Output: Rufus
console.log(myDog.breed); // Output: Labrador

在代码中,我们首先定义了一个父类 Animal,它有一个属性 name,然后我们创建了一个子类 Dog,它继承自 Animal,并添加了属性 breed。我们在子类的构造函数中使用 super(name) 调用了父类 Animal 的构造函数,将 name 传递给了它。这样,我们就可以创建一个实例 myDog,它具有父类 Animal 的属性 name 和子类 Dog 的属性 breed

注意:子类的构造函数必须在使用 this 之前调用 super(),否则会报错。

参考链接