L'operatore di modifica facoltativo continuerà lungo il percorso finché non raggiunge un valore di proprietà o si verifica un errore:
lasciare dipendente = {nome di battesimo : 'John' ,
cognome : 'Dai' ,
Età : 3. 4
} ;
consolle. tronco d'albero ( dipendente. indirizzo ? . cerniera lampo ) ;
Se avessimo provato ad accedere allo stesso valore della proprietà senza utilizzare l'operatore di concatenamento opzionale, avremmo ricevuto un errore:
lasciare dipendente = {
nome di battesimo : 'John' ,
cognome : 'Dai' ,
Età : 3. 4
} ;
consolle. tronco d'albero ( dipendente. indirizzo . cerniera lampo ) ;
Concatenamento opzionale sulle chiamate di metodo
Il concatenamento facoltativo funziona anche sulle chiamate di metodo. Puoi utilizzare il concatenamento facoltativo quando non sei sicuro che esista un metodo all'interno di un oggetto. Un esempio di caso d'uso sono i dati recuperati da un'API che può contenere o meno determinate funzionalità a seconda del dispositivo dell'utente:
lasciare dipendente = {
nome di battesimo : 'John' ,
cognome : 'Dai' ,
Età : 3. 4
} ;
consolle. tronco d'albero ( dipendente. metodo ? . ( ) ) ;
Senza concatenamento opzionale:
lasciare dipendente = {
nome di battesimo : 'John' ,
cognome : 'Dai' ,
Età : 3. 4
} ;
consolle. tronco d'albero ( dipendente. metodo ( ) ) ;
L'operatore di concatenamento facoltativo può anche essere utilizzato più volte all'interno di una singola istruzione per evitare errori.
Combinazione del concatenamento opzionale con l'operatore di coalescenza Nullish
Il concatenamento opzionale può anche essere accoppiato con il ?? operatore per fornire un valore predefinito nel caso in cui la proprietà o il metodo non esistano:
lasciare dipendente = {nome di battesimo : 'John' ,
cognome : 'Dai' ,
Età : 3. 4
} ;
consolle. tronco d'albero ( dipendente. metodo ? . ( ) ?? 'La funzione non esiste' ) ;
Il valore predefinito può anche essere una chiamata di funzione.
Uso eccessivo del concatenamento opzionale
È stato introdotto il concatenamento opzionale per aumentare la leggibilità e l'eleganza del codice. Dovrebbe essere usato con attenzione in quanto può comportare il silenziamento degli errori. L'uso eccessivo dell'operatore di concatenamento opzionale può causare problemi nel codice.
Conclusione
Il concatenamento opzionale è una funzionalità aggiunta di recente di JavaScript che può essere utilizzata per accedere a proprietà e metodi all'interno di oggetti JavaScript nidificati in profondità senza doversi preoccupare di eseguire controlli manuali per l'esistenza di tali metodi e proprietà.