Gecko 1.8.1 fournit un nouveau moyen pour les pages web de stocker des données côté client, en Javascript. C'est une alternative plus puissante et plus souple que les traditionnels cookies.
Voir les spécifications sur le site du Whatwg.
Concrètement, le développeur web dispose de deux objets Javascript : sessionStorage et globalStorage.
C'est un objet qui permet de stocker des données relatives à une session. Pour faire court, il y a un objet sessionStorage par fenêtre (ou par onglet). Par exemple, si vous ouvrez deux fenêtres sur un même site, chacune des deux pages auront leur propre objet sessionStorage.
sessionStorage est un objet de type storage (voir plus loin).
Exemple :
sessionStorage.foo = "bar";
if (sessionStorage.foo == 'hello') {
...
}
Il permet de stocker des données relatif à un domaine. Il est commun à toutes les sessions (donc à toutes les pages web de toutes les fenêtres).
globalStorage est un tableau contenant des objets de type storage. Chaque élément de ce tableau ayant pour clé le nom d'un domaine. Il y a des restrictions d'accès suivant le nom de domaine de la page web et les noms de ces clés. Exemples (pris des spécs) :
Exemple :
globalStorage['xulfr.org'].foo = "bar";
ToDo: à compléter.
sessionStorage et les objets dans globalStorage ont les propriétés et méthodes suivantes :
interface Storage {
readonly attribute unsigned long length;
DOMString key(in unsigned long index);
StorageItem getItem(in DOMString key);
void setItem(in DOMString key, in DOMString data);
void removeItem(in DOMString key);
};
Exemple :
alert("Il y a " + sessionStorage.length + " informations stockées.");
// Les deux instructions suivantes sont équivalentes.
sessionStorage.setItem("foo", "une valeur");
sessionStorage.foo = "une valeur";
var truc;
// Les deux instructions suivantes sont équivalentes.
truc = sessionStorage.getItem('foo');
truc = sessionStorage.foo;
Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.
Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™
sont des marques de la fondation Mozilla.