Controllo della struttura dell'oggetto in TypeScript
TypeScript controlla anche la struttura dell'oggetto. Supponiamo di aver dichiarato il nostro oggetto utente:
let user = {name: 'john', age: 30};
Al momento della dichiarazione, TypeScript memorizza
che nel nostro oggetto ci sono le chiavi 'name'
e 'age', e poi controlla che
nella variabile sia memorizzato un oggetto proprio con queste
chiavi.
Tentare di assegnare alla variabile un oggetto diverso porta a un errore di compilazione. Proviamo. Assegniamo alla variabile un oggetto in cui manca una chiave:
user = {name: 'eric'}; // errore
Assegniamo alla variabile un nuovo oggetto con le stesse chiavi, ma anche con una chiave in più:
user = {name: 'eric', age: 40, salary: 300}; // errore
Ora assegniamo alla variabile un oggetto
contenente solo le chiavi 'name' e
'age':
user = {name: 'eric', age: 40}; // funziona
Senza eseguire il codice, determinate quale sarà il risultato dell'esecuzione del codice:
let date = {year: 2025, month: 12, day: 31};
date = {year: 2025, month: 12};
Senza eseguire il codice, determinate quale sarà il risultato dell'esecuzione del codice:
let date = {year: 2025, month: 12, day: 31};
date = {year: 2025, month: 12, date: 7};