ES2019 introduce la possibilità di effettuare operazioni utilizzando il Nullish coalescing, consentendo di estrarre un dato da un oggetto controllando prima che non sia nullo.
Questa sintassi permette di facilitare la scrittura di codice e al tempo stesso aumentarne la leggibilità.
// se la persona è null l'operazione fallisce // se eta = 0 restituisce 1 var t = persona.eta || 1; // controllo l'esistenza dell'oggetto prima dell'assegnazione var t = ""; if(persona){ var t = persona.eta || 1; } // Nullish coalescing var t = persona?.eta ?? 1
Il Nullish coalescing risulta utile quando l'operazione è diretta verso un unico parametro, ma nel caso di più parametri o oggetti è consigliato l'utilizzo della decostruzione
const getNumber = (ogg) => ogg?.num ?? 1; const getNumber1 = ({ num = 15 } = {}) => num; var t = getNumber({num: 10}) // t = 10 var t1 = getNumber1({}) // t = 15
Il vantaggio nella seconda versione (getNumber1) è l'innegabile elasticità che può assumere la funzione: possiamo aggiungere più parametri opzionali ed interagire con essi mantenendo un'ottima pulizia e lettura.
const getNumber = (ogg) => { var n = ogg?.num ?? 1 var n1 = ogg?.num1 ?? 2 return n*n1; }; const getNumber1 = ({ num = 15, num1 = 10} = {}) => num*num1;
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Impostare il contenuto dell'head all'interno di ogni pagina Blazor
Introduzione al nuovo tipo TimeOnly di .NET
Utilizzare i WebSocket con Azure API Management
.NET 7 Live Q&A
Log streaming di una Azure Container App
Autenticazione con Minimal API di ASP.NET Core 6
Generare le release note automaticamente tramite una GitHub Action
Effettuare test di carico con Azure Load Testing
Tracciare gli eventi tramite i DevTools di Chrome
Le novità di Entity Framework (Core) 7
Taggare automaticamente un repository con un workflow di GitHub
Utilizzare la parola chiave file nel codice C#
I più letti di oggi
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Migliorare la scalabilità di ASP.NET Core 7 grazie all'output cache
- .NET Conference Italia 2022 - Milano e Online
- Ottenere il riferimento alla finestra che ha aperto un'altra finestra con HTML5 e JavaScript