Animations

API

Arrays

Async

Basics

Challenges

Classes

Console

Dates

Debugging

DOM Elements

DOM Methods

DOM Navigation

DOM Properties

Event Listeners

Flow Control

Forms

Functions

Global Functions

JSON

Keywords

Libraries (3rd party)

Math

Modules

Objects

Snippets

String

Types

Widgets

Window Object

JavaScript - Local Storage

Before HTML5, application data had to be stored in cookies, included in every server request. Web storage is more secure, and large amounts of data can be stored locally, without affecting website performance. Unlike cookies, the storage limit is far larger (at least 5MB) and information is never transferred to the server.

Web storage is per origin (per domain and protocol). All pages, from one origin, can store and access the same data.

HTML web storage provides two objects for storing data on the client:

  • window.localStorage - stores data with no expiration date
  • window.sessionStorage - stores data for one session (data is lost when the browser tab is closed)

With a little js magic, we can use this client-side. Use this form to store your data in local storage and then retrieve it. If you've used this form already then the message below should be pre-populated when the page loads.

You can even store serialized objects which is handy.


$(function ()
{
    let demo1 = $("#demo1");
    let msg = (localStorage.Message === undefined || localStorage.Message === "") ? "nothing yet" : localStorage.Message;
    let num = (localStorage.MagicNumber === undefined || localStorage.MagicNumber === "") ? "nothing yet" : localStorage.MagicNumber;
    let html = `Message: ${msg}<br />Magic Number: ${num}`;
    demo1.html(html);
});

const Submit = () =>
{
    let msg = $("#Message").val();
    let magicNumber = $("#MagicNumber").val();

    localStorage.Message = msg;
    localStorage.MagicNumber = magicNumber;
    window.location.assign(window.location.href);
    localStorage.MagicObject = JSON.stringify({ Message: msg, MagicNumber: magicNumber });
};

const Remove = () =>
{
    localStorage.removeItem("Message");
    localStorage.removeItem("MagicNumber");
    window.location.assign(window.location.href);
};

https://www.w3schools.com/html/html5_webstorage.asp

https://www.w3schools.com/jsref/prop_win_localstorage.asp