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.