Metodo constructor della classe JavaScript

Definizione e uso

constructor() Il metodo è un metodo speciale utilizzato per creare e inizializzare gli oggetti creati nella classe.

Durante l'inizializzazione della classe,constructor() Il metodo viene chiamato automaticamente e deve utilizzare il nome esatto "constructor". In realtà, se non hai un metodo costruttore, JavaScript aggiungerà un metodo costruttore invisibile.

Attenzione:Una classe non può utilizzare più metodi constructor(). Questo genererà SyntaxError.

Puoi usare super() Metodi per chiamare il costruttore della classe padre (vedi ulteriori esempi di seguito).

Esempio

Esempio 1

Crea una classe Car e poi crea un oggetto chiamato "mycar" basato su questa classe Car:

class Car {
  constructor(brand) {  // Costruttore
    this.carname = brand;
  }
}
mycar = new Car("Ford");

Prova tu stesso

Esempio 2

Per creare l'ereditarietà delle classi, utilizzare extends Parola chiave.

Le classi create tramite l'ereditarietà delle classi erediteranno tutti i metodi dall'altra classe.

Crea una classe chiamata "Model" che erediterà i metodi della classe "Car":

class Car {
  constructor(brand) {
    this.carname = brand;
  }
  present() {
    return 'Ho una ' + this.carname;
  }
}
class Model extends Car {
  constructor(brand, mod) {
    super(brand);
    this.model = mod;
  }
  show() {
    return this.present() + ', è una ' + this.model;
  }
}
mycar = new Model("Ford", "Mustang");
document.getElementById("demo").innerHTML = mycar.show();

Prova tu stesso

super() si riferisce al costruttore della classe padre.

attraverso una chiamata nel costruttore super() Il metodo, che chiameremo, invoca il costruttore della classe padre e ci permette di accedere alle proprietà e ai metodi della classe padre.

Sintassi

constructor(parametri)

Dettagli tecnici

Versione di JavaScript: ECMAScript 2015 (ES6)

Supporto del browser

Metodo Chrome IE Firefox Safari Opera
constructor() 49.0 13.0 45.0 9.0 36.0

相关页面

JavaScript教程:Classe JavaScript

JavaScript教程:JavaScript ES6 (EcmaScript 2015)

Manuale di riferimento JavaScript:Parola chiave extends

Manuale di riferimento JavaScript:Parola chiave super