Molto spesso capita di dover impostare il valore di una variabile in base al fatto che un'altra sia null o meno. Ad esempio, dobbiamo impostare una stringa di default da visualizzare se l'indirizzo di una persona non è specificato. In questi casi il codice da scrivere è molto semplice.
const address = person.address || "nessun indirizzo";
Questo piccolo esempio è perfettamente funzionante, ma presenta il problema di validare la truthiness di JavaScript e non l'esistenza o meno dell'indirizzo. Se vogliamo lavorare sull'esistenza dell'indirizzo, dovremmo confrontarlo con null o undefined scrivendo quindi un codice del genere.
const address = person.address == null || person.address == undefined ? "nessun indirizzo" : person.address;
Questo esempio è più verboso rispetto al precedente, ma è semanticamente più corretto. Per rendere questo codice più compatto, possiamo ricorrere al Null Coalescing Operator "??".
const address = person.address ?? "nessun indirizzo";
L'operatore ?? valuta l'espressione di sinistra e se questa è null o undefined restituisce il valore di destra.
Questo operatore torna particolarmente utile quando combinato con l'optional chaining operator visto nello script #295.
const address = data?.address?.city?.id ?? "nessun indirizzo"
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Eseguire una query su SQL Azure tramite un workflow di GitHub
Ordinare randomicamente una lista in C#
Utilizzare Copilot con Azure Cosmos DB
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT
Eseguire i worklow di GitHub su runner potenziati
Utilizzare Azure Cosmos DB con i vettori
Utilizzare i primary constructor di C# per inizializzare le proprietà
Gestione dell'annidamento delle regole dei layer in CSS
Esporre i propri servizi applicativi con Semantic Kernel e ASP.NET Web API
Gestire domini wildcard in Azure Container Apps
Migrare una service connection a workload identity federation in Azure DevOps
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow