docs.rodeo

MDN Web Docs mirror

Window: sessionStorage property

{{APIRef("Web Storage API")}} 

The read-only sessionStorage property accesses a session {{DOMxRef("Storage")}}  object for the current {{glossary("origin")}} . sessionStorage is similar to {{DOMxRef("Window.localStorage", "localStorage")}} ; the difference is that while localStorage is partitioned by origin only, sessionStorage is partitioned by both origin and browser tabs (top-level browsing contexts). The data in sessionStorage is only kept for the duration of the page session.

Value

A {{DOMxRef("Storage")}}  object which can be used to access the current origin’s session storage space.

Exceptions

Examples

Basic usage

// Save data to sessionStorage
sessionStorage.setItem("key", "value");

// Get saved data from sessionStorage
let data = sessionStorage.getItem("key");

// Remove saved data from sessionStorage
sessionStorage.removeItem("key");

// Remove all saved data from sessionStorage
sessionStorage.clear();

Saving text between refreshes

The following example autosaves the contents of a text field, and if the browser is refreshed, restores the text field content so that no writing is lost.

// Get the text field that we're going to track
let field = document.getElementById("field");

// See if we have an autosave value
// (this will only happen if the page is accidentally refreshed)
if (sessionStorage.getItem("autosave")) {
  // Restore the contents of the text field
  field.value = sessionStorage.getItem("autosave");
}

// Listen for changes in the text field
field.addEventListener("change", () => {
  // And save the results into the session storage object
  sessionStorage.setItem("autosave", field.value);
});

[!NOTE] Please refer to the Using the Web Storage API article for a full example.

Specifications

{{Specifications}} 

Browser compatibility

{{Compat}} 

See also

In this article

View on MDN