[ Web Proxy ]
URL:
Viewing: https://it.javascript.info/task/class-constructor-error [Back]  [Original]

Error creating an instance
IT

Vorremo rendere disponibile questo progetto open-source per persone in tutto il mondo.

Aiutaci a tradurre il contenuto di questo tutorial nella tua lingua!

    Cerca in Javascript.info:
    Cerca nel tutorial:
    Light themeDark theme
    DanskEnglishEspaolFranaisIndonesiaItalianoTrkeOzbek
    torna alle lezioni
    Questo materiale disponibile nelle seguenti lingue: , Dansk, English, Espaol, , Franais, Indonesia, , , , Trke, , Ozbek, . Per favore, aiutaci con la traduzione in Italiano.

    Error creating an instance

    importanza: 5

    Heres the code with Rabbit extending Animal.

    Unfortunately, Rabbit objects cant be created. Whats wrong? Fix it.

    class Animal {
    
      constructor(name) {
        this.name = name;
      }
    
    }
    
    class Rabbit extends Animal {
      constructor(name) {
        this.name = name;
        this.created = Date.now();
      }
    }
    
    let rabbit = new Rabbit("White Rabbit"); // Error: this is not defined
    alert(rabbit.name);
    soluzione

    Thats because the child constructor must call super().

    Heres the corrected code:

    class Animal {
    
      constructor(name) {
        this.name = name;
      }
    
    }
    
    class Rabbit extends Animal {
      constructor(name) {
        super(name);
        this.created = Date.now();
      }
    }
    
    let rabbit = new Rabbit("White Rabbit"); // ok now
    alert(rabbit.name); // White Rabbit

    Web Proxy Viewer  |  New URL  |  Original Page