La keyword new
Fa parte della sezione Programmazione orientata agli oggetti del percorso JavaScript di Coddy. Lezione 5 di 56.
La parola chiave new in JavaScript viene usata per creare istanze di funzioni costruttrici, che fungono da modelli per creare oggetti.
Crea una funzione costruttrice per una persona:
function Person(name, age) {
this.name = name;
this.age = age;
this.greet = function() {
return "Hello, my name is " + this.name;
};
}Usa la parola chiave new per creare un'istanza:
const john = new Person("John", 30);Dopo aver eseguito il codice precedente, john è un oggetto con proprietà e un metodo:
john.nameè "John"john.ageè 30john.greet()restituisce "Hello, my name is John"
Senza la parola chiave new, this farebbe riferimento all'oggetto globale (o sarebbe undefined in modalità strict), non alla nuova istanza.
Sfida
Crea un oggetto Car e stampa la sua descrizione
Ti viene fornita una funzione costruttrice che crea oggetti auto. Il tuo compito è:
- Crea un nuovo oggetto auto usando la parola chiave
new, passa "Honda" come nome e 2018 come anno - Chiama il metodo
getDescriptionsul tuo oggetto auto - Stampa il risultato nella console
Provalo tu
function Car(name, year) {
this.name = name;
this.year = year;
this.getDescription = function() {
return "This is a " + this.name + " from " + this.year;
};
}
// TODO: Crea un nuovo oggetto auto usando la parola chiave new, passa "Honda" come nome e 2018 come anno
// TODO: Chiama il metodo getDescription sul tuo oggetto auto e stampa il risultato nella console
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Programmazione orientata agli oggetti
1Oggetti e la keyword this
Ripasso rapido: oggettiAggiungere metodi agli oggettiCapire la keyword thisFunzioni costruttriciLa keyword newSfida di ripasso7Ereditarietà e parola chiave extends
EreditarietàLa relazione «è un»La parola chiave extendsIl metodo super()Ereditare proprietà e metodiSfida di ripasso13Composizione vs. ereditarietà
«Ha-un» vs. «è-un»I limiti dell’ereditarietà profondaCostruire oggetti2Organizzare il codice
Cosa sono i moduli?Esportare con exportImportare con importExport predefiniti vs. export nominati5Incapsulamento e accesso
IncapsulamentoCampi di classe pubblici e privatiMetodi privatiSfida di riepilogo8Organizzare il codice OOP
Organizzare le classi in moduli11Progetto: Un renderizzatore di forme
Configurazione: classe Shape ed esportazioneEreditarietà della classe CircleOverride e metodo areaContatore statico di Shape14Sistema di gestione della biblioteca
Progettare la bibliotecaClasse Book con composizioneValidazione dell'autore del libroEsercitati da solo: Compilatore JavaScript online