UAA 5    Programmation procédurale
☰

Évaluation booléenne en JavaScript

1. Valeurs truthy et falsy

JavaScript évalue certaines valeurs comme vraies (truthy) ou fausses (falsy) dans un contexte booléen.

Valeurs falsy

Exemples


if ("hello") console.log("truthy");
if (0) console.log("truthy");
  

2. Opérateurs logiques

&& (AND)


true && "ok"      // "ok"
0 && "test"       // 0
"hello" && 42     // 42
  

|| (OR)


false || "ok"     // "ok"
"" || 123         // 123
null || "default" // "default"
  

! (NOT)


!true   // false
!0      // true
!!"hi"  // true
  

3. Short-circuiting

Avec &&


false && doSomething(); // doSomething() n'est pas exécuté
  

Avec ||


"hello" || doSomething(); // doSomething() n'est pas exécuté
  

Valeur par défaut


let name = userName || "Anonyme";
  

Exécuter une action si condition truthy


isLoggedIn && showDashboard();
  

4. Comparaison : == vs ===

=== (strict)


0 === false   // false
"1" === 1     // false
  

== (faible)


0 == false        // true
"1" == 1          // true
null == undefined // true
  

5. Exemples d'évaluation

Exemple 1


if ("0") console.log("ok");
  

Exemple 2


let x = null;
console.log(x || "vide"); // "vide"
  

Exemple 3


let a = 5 && 0 && 10;  // 0
  

6. Résumé

  • JS convertit automatiquement les valeurs en truthy/falsy.
  • && et || retournent des valeurs, pas seulement des booléens.
  • Le short-circuiting optimise l'évaluation.
  • === est recommandé pour éviter les conversions implicites.