Как работает
Web Storage — простой key-value API в браузере для строк, без автоматической отправки на сервер (в отличие от cookie).
Два хранилища
localStorage — долгое хранение на origin, доступно всем вкладкам этого origin.
sessionStorage — на время страничной сессии вкладки; новая вкладка — своё хранилище.
localStorage.setItem("user", JSON.stringify({ id: 1 }));
const user = JSON.parse(localStorage.getItem("user"));
sessionStorage.removeItem("draft");
Квоты ограничены; только строки (объекты — через JSON); уязвимы к XSS; событие storage между вкладками для localStorage.
Итог
Web Storage = localStorage + sessionStorage для клиентских данных; не для секретов сессии.