Problème : par défaut le navigateur ne permet pas de stocker des informations
Comment garder en mémoire des infos d'une page à une autre ?
API Web Storage : un stockage simple
Infos conservées uniquement localement dans le navigateur
⇒ aucune sécurité ou garantie d'enregistrement
⇒ utile pour faciliter le développement d'applications Javascript
Deux types de stockage
Objet sessionStorage conserve en mémoire les données tant que le navigateur n'est pas fermé
Permet de conserver des informations pendant la navigation en cours
Objet localStorage conserve en mémoire les données même si on ferme le navigateur
Permet de stocker des informations pour une (ré)utilisation future
Évènement storage peut être capté à chaque changement dans le stockage
API Web Storage : principes
Enregistre des données sous la forme de paires (clé, valeur)
Ne peut enregistrer que des scalaires (nombres, booléens, chaines de caractères)
Peut stocker ~5Mo de données maximum
Objet sessionStorage ou localStorage fonctionnent pareil
Propriété Storage.length pour savoir le nombre de clés existantes
Méthodes :
Storage.setItem(key, value) pour enregistrer la clé key avec la valeur value
Storage.getItem(key) pour obtenir la valeur correspondant à la clé key
(renvoie null si la clé n'existe pas)
Storage.removeItem(key) pour supprimer l'enregistrement correspondant à la clé key
Storage.clear() pour tout supprimer
Storage.key(n) pour avoir le nom de la nième clé
Évènement storage crée un objet StorageEvent avec les infos sur les chnagements effectués dans le stockage (voir détails dans la documentation)