Logical Assignment

JavaScript 🟢 Junior

Definition

Operateurs &&=, ||= et ??= qui combinent affectation et logique. a ??= b assigne b a a seulement si a est null/undefined. Court-circuitage preserve.

Analogie

Remplir un formulaire pre-rempli : tu n'ecris que dans les cases vides (??=), pas celles deja remplies.

Exemple de code

let opts = {};
opts.timeout ??= 5000;  // assigne si null/undefined
opts.debug ||= false;   // assigne si falsy
opts.verbose &&= true;  // assigne si truthy

Cas d'usage

Initialiser des options/configurations avec des valeurs par defaut de maniere concise.

#core#ES2021#syntaxe