Sofiane Boumedine Lexique Dev

Nullish Coalescing

JavaScript 🟢 Junior

Type : Concept

Definition

L'operateur ?? retourne l'operande de droite uniquement si celui de gauche est null ou undefined. Contrairement a ||, il ne reagit pas aux valeurs falsy comme 0 ou ''.

Analogie

Un plan B uniquement quand il n'y a vraiment rien : 0 et une chaine vide sont des reponses valides, pas des absences.

Exemple de code

const port = config.port ?? 3000;
const name = user.name ?? class="str">'Anonyme';
class="cmt">// 0 ?? 42 => 0 (pas falsy-based)
class="cmt">// 0 || 42 => 42 (falsy-based)

Cas d'usage

Definir des valeurs par defaut sans ecraser les valeurs falsy legitimes comme 0 ou false.

core