Chapitre 12 : Manipulation de données et LocalStorage

Écouter la leçon Lecture audio assistée par IA

1. Pourquoi stocker des données côté client ?

Stocker des données directement dans le navigateur de l'utilisateur permet de conserver des informations entre deux visites ou après un rafraîchissement de la page, sans avoir besoin d'un serveur ou d'une base de données complexe.

  • Conserver les préférences de l'utilisateur (thème sombre, langue)
  • Sauvegarder un panier d'achat temporaire
  • Stocker des jetons d'authentification (tokens)
  • Améliorer les performances en mettant des données en cache

2. Qu'est-ce que le LocalStorage ?

Le LocalStorage est une API du navigateur qui permet de stocker des paires clé/valeur de manière persistante.

  • Les données n'ont pas de date d'expiration
  • Le stockage est limité à environ 5-10 Mo selon le navigateur
  • Les données ne sont jamais envoyées au serveur automatiquement
  • Objectifs du chapitre

    • Comprendre les concepts clés de Manipulation de données et LocalStorage.
    • Savoir appliquer ces concepts sur un cas concret.
    • Éviter les erreurs fréquentes et adopter les bonnes pratiques.

    3. Utiliser l'API LocalStorage

    Enregistrer une donnée

    localStorage.setItem('theme', 'dark');
    localStorage.setItem('utilisateur', 'Rolph');

    Récupérer une donnée

    let theme = localStorage.getItem('theme');
    console.log(theme); // Affiche "dark"

    Supprimer une donnée

    localStorage.removeItem('theme');

    Vider tout le stockage

    localStorage.clear();

    4. Stocker des objets complexes

    Le LocalStorage ne peut stocker que des chaînes de caractères. Pour stocker des objets ou des tableaux, nous devons utiliser JSON.stringify() et JSON.parse().

    const user = {
        nom: "Alice",
        score: 450
    };
    
    // Stockage
    localStorage.setItem('user_data', JSON.stringify(user));
    
    // Récupération
    const savedUser = JSON.parse(localStorage.getItem('user_data'));
    console.log(savedUser.nom); // Alice

    5. SessionStorage : L'alternative temporaire

    Le SessionStorage fonctionne exactement comme le LocalStorage, mais les données sont supprimées dès que l'onglet ou le navigateur est fermé.

    sessionStorage.setItem('temp_id', '12345');

    Conclusion

    Le LocalStorage est un outil puissant pour créer des applications web interactives qui "se souviennent" de l'utilisateur. Dans le prochain chapitre, nous verrons comment gérer les erreurs et déboguer efficacement votre code.

    Explication

    Ce chapitre vous guide pas à pas sur le thème Manipulation de données et LocalStorage. L'idée est de partir d'une approche simple, puis de progresser vers des usages plus réalistes.

    Exemple pratique

    Essayez d'appliquer la notion vue ici dans un mini-exemple de votre projet personnel. Ensuite, comparez votre résultat avec les exercices associés pour valider votre compréhension.

    À retenir

    Maîtriser Manipulation de données et LocalStorage vous permettra d'aller plus vite dans les chapitres suivants.

Évaluation des acquis

Quiz du chapitre 12

Correction immédiate
Ateliers pratiques & Projets

Testez vos compétences avec nos exercices guidés et le tuteur IA.

Ateliers pratiques & Corrigés détaillés

Ateliers pratiques & Corrigés

#1 — LocalStorage Set
Atelier #1

Enregistre la valeur 'bleu' pour la clé 'theme' dans le LocalStorage.

Correction instantanée et bienveillante
Diagnostic du tuteur IA Weegosoft :
Consulter la solution type du formateur
Solution de référence :
localStorage.setItem("theme", "bleu");
#2 — LocalStorage Get
Atelier #2

Récupère la valeur associée à la clé 'theme' du LocalStorage.

Correction instantanée et bienveillante
Diagnostic du tuteur IA Weegosoft :
Consulter la solution type du formateur
Solution de référence :
const theme = localStorage.getItem("theme");
#3 — Stockage d'objet
Atelier #3

Comment stocker un objet 'user' dans le LocalStorage (vu qu'il n'accepte que des strings) ?

Correction instantanée et bienveillante
Diagnostic du tuteur IA Weegosoft :
Consulter la solution type du formateur
Solution de référence :
localStorage.setItem("user", JSON.stringify(user));
#4 — Filtrer un tableau
Atelier #4

Utilise .filter() pour garder uniquement les nombres supérieurs à 10 d'un tableau.

Correction instantanée et bienveillante
Diagnostic du tuteur IA Weegosoft :
Consulter la solution type du formateur
Solution de référence :
const grandsNombres = tab.filter(n => n > 10);
#5 — SessionStorage
Atelier #5

Quelle est la principale différence entre LocalStorage et SessionStorage ?

Correction instantanée et bienveillante
Diagnostic du tuteur IA Weegosoft :
Consulter la solution type du formateur
Solution de référence :
Le SessionStorage est effacé à la fermeture de l'onglet/navigateur, alors que le LocalStorage persiste.
Besoin d'aide ?
Tuteur Virtuel
Bonjour ! Je suis votre tuteur virtuel. Comment puis-je vous aider avec ce cours aujourd'hui ?
Historique des conversations
Chargement...