Leçon 4/8 7 min

Conditions et boucles

Prenez des décisions avec if/else, comparez avec ===, et parcourez des données avec for, forEach, map et filter.

if / else if / else

Les conditions permettent à votre code de prendre des décisions. C'est le cerveau de votre programme :

const age = 18;

if (age >= 18) {
  console.log("Majeur");
} else if (age >= 16) {
  console.log("Presque majeur");
} else {
  console.log("Mineur");
}

Le code entre { } ne s'exécute que si la condition est vraie.

Comparaisons et logique

Opérateurs de comparaison :

  • === — égal (type et valeur). Toujours utiliser celui-ci
  • !== — différent
  • <, >, <=, >= — inférieur, supérieur

Opérateurs logiques :

  • && — ET (les deux doivent être vrais)
  • || — OU (au moins un doit être vrai)
  • ! — NON (inverse le résultat)

L'opérateur ternaire est un raccourci pour if/else :

const statut = age >= 18 ? "Majeur" : "Mineur";

Les boucles

Les boucles répètent un bloc de code plusieurs fois :

// Boucle for classique
for (let i = 0; i < 5; i++) {
  console.log("Tour " + i);
}

// Boucle while
let compteur = 0;
while (compteur < 3) {
  console.log(compteur);
  compteur++;
}

Méthodes de tableau : forEach, map, filter, find

En pratique, on utilise rarement for directement. Les méthodes de tableau sont plus élégantes :

const notes = [12, 18, 7, 15, 9, 20];

// forEach — exécuter du code pour chaque élément
notes.forEach((note) => console.log(note));

// map — transformer chaque élément
const doublees = notes.map((n) => n * 2);

// filter — garder ceux qui passent le test
const bonnes = notes.filter((n) => n >= 10);

// find — trouver le premier qui passe le test
const premiere = notes.find((n) => n >= 15);

if / else if / else

Conditions let your code make decisions. It's the brain of your program:

const age = 18;

if (age >= 18) {
  console.log("Adult");
} else if (age >= 16) {
  console.log("Almost adult");
} else {
  console.log("Minor");
}

The code between { } only runs if the condition is true.

Comparisons and logic

Comparison operators:

  • === — equal (type and value). Always use this one
  • !== — not equal
  • <, >, <=, >= — less than, greater than

Logical operators:

  • && — AND (both must be true)
  • || — OR (at least one must be true)
  • ! — NOT (inverts the result)

The ternary operator is a shortcut for if/else:

const status = age >= 18 ? "Adult" : "Minor";

Loops

Loops repeat a block of code multiple times:

// Classic for loop
for (let i = 0; i < 5; i++) {
  console.log("Round " + i);
}

// While loop
let counter = 0;
while (counter < 3) {
  console.log(counter);
  counter++;
}

Array methods: forEach, map, filter, find

In practice, you rarely use for directly. Array methods are more elegant:

const grades = [12, 18, 7, 15, 9, 20];

// forEach — run code for each element
grades.forEach((grade) => console.log(grade));

// map — transform each element
const doubled = grades.map((n) => n * 2);

// filter — keep those that pass the test
const passing = grades.filter((n) => n >= 10);

// find — find the first one that passes
const first = grades.find((n) => n >= 15);
Essayez vous-même
Avec l'IA

Copiez ce prompt dans Claude ou ChatGPT :

Explique-moi la différence entre == et === en JavaScript avec 3 exemples piégeux où == donne un résultat surprenant.
Exercice : Corrigez le code de l'IA

L'IA a utilisé == au lieu de ===. Remplacez == par === pour une comparaison stricte.

Corrigez le code
Pourquoi utiliser === plutôt que == ?
Que retourne [1,2,3].filter(n => n > 1) ?
Que fait && (ET logique) ?
Quelle méthode transforme chaque élément d'un tableau ?
Besoin d'un développeur pour votre projet ?

Réponse sous 24h — Sans engagement