Se nello script #373 abbiamo parlato di Map e delle sue differenze con Object, ora non possiamo non parlare di Set: la controparte per quanto riguarda gli Array.
Set permette di creare una lista di elementi univoci, con prestazioni in aggiunta e rimozione incredibili, a volte anche il 100% più rapido dei classici array. Il suo impiego va comunque mirato in quanto non permette di inserire elementi duplicati, quindi potrebbe non adattarsi alla perfezione alla nostra applicazione. Vediamone dei casi d'uso.
// dichiarazione const mySet = new Set([0, 3, 6]) // aggiunta mySet.add(3) // rimozione mySet.delete(4) // controllo esistenza mySet.has(5)
Nell'esempio mostrato, la prima aggiunta non cambierà il Set, dato che il numero 3 è già presente al suo interno. Le successive operazioni di delete ed has restituiranno come risultato false dato che i numeri 4 e 5 non sono presenti.
Similmente a quanto visto con Map abbiamo la possibilità di convertire un Set in Array e viceversa.
if (value instanceof Set) { return Array.from(value) } if (Array.isArray(value)) { return new Set(value) }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Reactive form tipizzati con FormBuilder in Angular
Gestire errori funzionali tramite exception in ASP.NET Core Web API
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Load test di ASP.NET Core con k6
Limitare le richieste lato server con l'interactive routing di Blazor 8
Gestire i null nelle reactive form tipizzate di Angular
Eseguire attività con Azure Container Jobs
C# 12: Cosa c'è di nuovo e interessante
Eseguire query verso tipi non mappati in Entity Framework Core
Generare velocemente pagine CRUD in Blazor con QuickGrid
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework
Utilizzare l'operatore GroupBy come ultima istruzione di una query LINQ in Entity Framework