Conditions et boucles
Ce que tu vas apprendre
- Comparer des valeurs et combiner des conditions.
- Choisir une branche avec
if,elseetswitch. - Répéter une action avec
for,whileetfor...of.
Comparer des valeurs
Une condition est une expression dont le résultat est true ou false. On l'obtient en comparant des valeurs.
const temps = 25
console.log(temps > 20) // true
console.log(temps <= 10) // false
console.log(temps === 25) // true
console.log(temps !== 30) // true
| Opérateur | Sens |
|---|---|
=== | Égal (même valeur, même type). |
!== | Différent. |
> et < | Plus grand, plus petit. |
>= et <= | Plus grand ou égal, plus petit ou égal. |
===, pas ==. Le double égal convertit les types avant de comparer, et 0 == '' vaut true.if et else
Le mot-clé if exécute un bloc si la condition est vraie. else donne l'alternative.
const temperature = 190
if (temperature >= 180) {
console.log('Le four est prêt')
} else {
console.log('Attends encore')
}
Pour plusieurs cas, enchaîne avec else if. Le premier test vrai l'emporte, les suivants sont ignorés.
const minutes = 45
if (minutes < 15) {
console.log('Recette express')
} else if (minutes < 60) {
console.log('Recette du soir')
} else {
console.log('Recette du dimanche')
}
Combiner des conditions
Trois opérateurs logiques relient les conditions.
const vegetarien = true
const sansGluten = false
console.log(vegetarien && sansGluten) // false : les deux doivent être vrais
console.log(vegetarien || sansGluten) // true : un seul suffit
console.log(!vegetarien) // false : inverse la valeur
&& veut dire « et », || veut dire « ou », ! veut dire « non ».
Valeurs vraies et fausses
Dans un if, JavaScript accepte toute valeur. Certaines comptent comme fausses : false, 0, '' (texte vide), null, undefined et NaN. Toutes les autres comptent comme vraies.
const nom = ''
if (nom) {
console.log('Bonjour ' + nom)
} else {
console.log('Le nom est vide')
}
Ce raccourci est pratique pour tester qu'un texte n'est pas vide.
switch
Quand tu compares une seule valeur à plusieurs cas, switch est plus lisible.
const plat = 'dessert'
switch (plat) {
case 'entree':
console.log('Au début du repas')
break
case 'dessert':
console.log('À la fin du repas')
break
default:
console.log('Plat inconnu')
}
Chaque case finit par break. Sans lui, l'exécution continue dans le cas suivant.
L'opérateur ternaire
Pour choisir entre deux valeurs, le ternaire tient en une ligne : condition ? siVrai : siFaux.
const portions = 1
const mot = portions > 1 ? 'personnes' : 'personne'
console.log(`Pour ${portions} ${mot}`)
Réserve-le aux cas simples. Au-delà, un if est plus clair.
La boucle for
Une boucle répète un bloc de code. La boucle for convient quand tu sais combien de tours faire.
for (let i = 1; i <= 3; i++) {
console.log(`Étape ${i}`)
}
Entre parenthèses, trois parties séparées par des points-virgules :
let i = 1: le départ, exécuté une fois.i <= 3: la condition, testée avant chaque tour.i++: l'incrément, qui ajoute 1 après chaque tour.
while et for...of
La boucle while tourne tant que sa condition est vraie.
let pate = 0
while (pate < 3) {
pate++
console.log(`Pétrissage numéro ${pate}`)
}
Pour parcourir les éléments d'une liste, for...of est le plus simple. Un tableau est une liste de valeurs entre crochets, détaillé dans un autre cours.
const ingredients = ['farine', 'oeufs', 'lait']
for (const ingredient of ingredients) {
console.log(ingredient)
}
while ne devient jamais fausse, la boucle ne s'arrête pas et la page se fige. Vérifie que quelque chose change à chaque tour.break et continue
break quitte la boucle immédiatement. continue saute au tour suivant.
for (const ingredient of ['farine', 'sel', 'lait']) {
if (ingredient === 'sel') continue
console.log(ingredient)
}
À retenir
- Compare avec
===et!==, jamais avec==. if,else ifetelsechoisissent une branche,switchcompare une valeur à plusieurs cas.&&,||et!combinent des conditions.0,'',null,undefined,NaNetfalsecomptent comme faux dans unif.forrépète un nombre connu de fois,whiletant qu'une condition est vraie,for...ofparcourt une liste.breakquitte une boucle,continuepasse au tour suivant.
Pour aller plus loin
Sources officielles
Ensuite
Premiers pas en JavaScript
Où s'exécute JavaScript, comment utiliser la console, puis déclarer des variables avec let et const et reconnaître les types de valeurs.
Les fonctions
Écrire et appeler des fonctions, utiliser les paramètres et le retour, découvrir les fonctions fléchées et comprendre la portée des variables.
- Projet
- Lignes de code
- Niveau
- 3e étage
- Appartement
- JavaScript
- Pièce
- 2/7
- Plan n°
- js/02.conditions-et-boucles