classi JavaScript

Le classi JavaScript sono solo funzioni che devono essere istanziate con operatore new. Ogni volta che viene istanziata una classe, restituisce un oggetto contenente i metodi e le proprietà specificati dalla classe.

class persona {
        constructor(nome, cognome) {
        this.nome = nome;
        this.cognome = cognome;
        this.email = "";
        this.indirizzo = "";
    } 
    mostraNomeCompleto() {
    return this.nome + " " + this.cognome;
    }
}

Ecco un esempio di come può essere ad hoc la creazione di una classe: è solo un'espressione restituita da una funzione freccia

const withAuthentication = (cls) =>
  class extends cls {
    authenticate() {
      // …
    }
  };

class Admin extends withAuthentication(Person) {
  // …
}