sessionStorage în JavaScript

Stocare și dispozitiv Toate browserele

Ca localStorage, dar datele există doar cât timp este deschisă fila respectivă.

Sintaxă
sessionStorage.setItem(cheie, valoare)
sessionStorage.getItem(cheie)
sessionStorage.removeItem(cheie)
sessionStorage.clear()

Ce face sessionStorage

sessionStorage are aceleași metode ca localStorage: setItem, getItem (null dacă lipsește), removeItem, clear. Diferența: datele sunt separate pentru fiecare filă și dispar când fila este închisă. Supraviețuiesc însă reîncărcării paginii.

Este potrivit pentru date temporare: pasul curent dintr-un formular cu mai multe etape, poziția de derulare, filtre. Valorile sunt texte, deci obiectele se salvează cu JSON.stringify.

Parametri

Parametru Descriere
cheie Numele valorii.
valoare Textul salvat.

Ce returnează

getItem: textul sau null.

Exemple

Exemplul 1: Un formular în mai mulți pași

Rezultat la prima vizită în filă.

const pas = Number(sessionStorage.getItem("pas-comanda") ?? 1);
console.log("pasul", pas);

sessionStorage.setItem("pas-comanda", pas + 1);
sessionStorage.setItem("adresa", JSON.stringify({ oras: "Iași", strada: "Lăpușneanu 12" }));
console.log(JSON.parse(sessionStorage.getItem("adresa")).oras);

sessionStorage.removeItem("adresa");
console.log(sessionStorage.getItem("adresa"));
sessionStorage.clear();

Rezultat în browser

pasul 1
Iași
null

Greșeli frecvente

  • Te aștepți ca datele să fie disponibile într-o filă nouă deschisă cu același site. Fiecare filă are propriul sessionStorage; pentru date comune folosește localStorage.

Comenzi înrudite

  • localStorage: Salvează date în browserul vizitatorului, care rămân și după închiderea paginii.
  • localStorage.clear / key: Șterge toate datele salvate de site în localStorage și parcurge cheile salvate.
  • JSON.stringify: Transformă un obiect sau tablou JavaScript în text JSON.