Nullish coalescing e decostruzione in JavaScript

di Morgan Pizzini, in HTML5, JavaScript,

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

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi