01

Les Bases de JavaScript

Variables, types, opérateurs, conditions et boucles

← Accueil

1 Variables : var, let, const

var ancien = "évite var, c'est l'ancien système"  // fonction-scoped, éviter
let compteur = 0          // peut changer
const PI = 3.14159        // ne peut PAS changer
💡 Règle simple : utilise const par défaut, let quand tu dois modifier.
Erreur fréquente :
const age = 20;
age = 21; // TypeError: Assignment to constant variable

2 Types de données

let texte   = "bonjour"        // string
let nombre  = 42               // number
let decimal = 3.14             // number (pas de distinction en JS)
let vrai    = true             // boolean
let faux    = false            // boolean
let rien    = null             // null (absence intentionnelle)
let inconnu = undefined        // undefined (pas encore défini)

Pour connaître le type :

typeof "bonjour"   // "string"
typeof 42          // "number"
typeof true        // "boolean"
typeof undefined   // "undefined"
typeof null        // "object" ← piège connu de JS !
💡 Astuce : console.log(typeof maVariable) pour débugger rapidement.

3 Opérateurs

// Arithmétiques
10 + 3   // 13
10 - 3   // 7
10 * 3   // 30
10 / 3   // 3.333...
10 % 3   // 1  (modulo = reste de la division)
2 ** 3   // 8  (puissance)

// Comparaison (toujours utiliser ===, jamais ==)
5 === 5   // true  — égalité stricte (valeur ET type)
5 == "5"  // true  — égalité laxiste (évite !)
5 !== 3   // true  — différent strict
5 > 3     // true
5 >= 5    // true

// Logiques
true && false  // false (ET)
true || false  // true  (OU)
!true          // false (NON)
Erreur fréquente :
0 == false   // true  (avec ==)
0 === false  // false (avec ===) ← correct

4 Conditions

let score = 75;

if (score >= 90) {
  console.log("Excellent");
} else if (score >= 70) {
  console.log("Bien");        // ← s'affiche
} else {
  console.log("À améliorer");
}

Switch (pour plusieurs cas précis) :

let jour = "lundi";

switch (jour) {
  case "lundi":
    console.log("Début de semaine");
    break;
  case "vendredi":
    console.log("Fin de semaine");
    break;
  default:
    console.log("Milieu de semaine");
}
Erreur fréquente : oublier le break dans un switch → les cases "tombent" les uns dans les autres.
💡
Opérateur ternaire :
let message = score >= 70 ? "Reçu" : "Recalé";
// équivalent à if/else mais en une ligne

5 Boucles

for (quand on connaît le nombre d'itérations) :

for (let i = 0; i < 5; i++) {
  console.log(i); // 0, 1, 2, 3, 4
}

while (quand on ne sait pas combien de tours) :

let n = 1;
while (n <= 5) {
  console.log(n);
  n++; // sans ça : boucle infinie !
}

for...of (pour parcourir un tableau) :

const fruits = ["pomme", "banane", "cerise"];
for (const fruit of fruits) {
  console.log(fruit);
}
Erreur fréquente :
while (true) {
  // sans condition de sortie → crash navigateur
}
💡 Astuce : préfère for...of sur les tableaux, c'est plus lisible que for (let i=0; i<arr.length; i++).

Résumé rapide

ConceptÀ retenir
constvaleur fixe (défaut)
letvaleur variable
===comparaison toujours stricte
%modulo (pair/impair : n % 2 === 0)
for...ofboucle sur tableau
🚀

Mini-Projet

Mets en pratique les bases JS avec un projet interactif complet.

Exercices & Solutions

Télécharge les fichiers, ouvre-les dans ton éditeur et travaille directement dedans.

📝 exercices.js

5 exercices sur les variables, conditions et boucles.

🟢 ×3 Facile 🟡 ×1 Moyen 🔴 ×1 Difficile
⬇ Télécharger
solutions.js

Corrections complètes. À consulter après avoir essayé.

Corrigé complet Best practices
⬇ Télécharger
🧠 Tester mes connaissances