JET School

Что такое Local Storage?

Local Storage (локальное хранилище) — это одна из возможностей, предоставляемых HTML5, которая позволяет веб-страницам сохранять данные непосредственно в браузере пользователя. Эта технология обеспечивает долговременное хранение данных в формате ключ-значение, и они сохраняются даже после перезапуска браузера или устройства. В отличие от cookies, данные, сохранённые в Local Storage, не передаются на сервер при каждом HTTP-запросе, что повышает производительность и безопасность.

Как работает Local Storage

Local Storage реализуется на уровне домена: это значит, что данные, сохранённые для одного сайта (домена), не могут быть доступны другим сайтам. Такой подход предотвращает несанкционированный доступ к пользовательской информации и поддерживает изоляцию между сайтами.

Структура и использование

Local Storage может хранить только строки. Если необходимо сохранить сложные типы данных, такие как объекты или массивы, их нужно сериализовать в строку с помощью JSON.stringify(), а при чтении обратно преобразовать с помощью JSON.parse().

Пример:

// Сохранение строки

localStorage.setItem("name", "Jane");


// Получение значения

const name = localStorage.getItem("name");


// Удаление значения

localStorage.removeItem("name");


// Очистка всего хранилища

localStorage.clear();

Пример с объектом:

const user = {

name: "Jane",

age: 25

};


localStorage.setItem("user", JSON.stringify(user));


const storedUser = JSON.parse(localStorage.getItem("user"));

console.log(storedUser.name); // "Jane"


Преимущества Local Storage

  • Долговременное хранение — данные сохраняются на неопределённое время, пока пользователь сам их не удалит или не очистит кэш.
  • Простой API — методы setItem, getItem, removeItem и clear делают работу с хранилищем удобной и понятной.
  • Большой объём — как правило, доступно около 5 мегабайт для хранения данных, что значительно превышает возможности cookies.
  • Не отправляется на сервер — данные не сопровождают каждый запрос к серверу, снижая нагрузку и увеличивая безопасность.
  • Поддержка офлайн-режима — информация остаётся доступной без подключения к Интернету.

Важные ограничения и замечания

  • Небезопасность хранения чувствительных данных — все данные, сохранённые в Local Storage, доступны через JavaScript и видимы в инструментах разработчика браузера. Поэтому хранить в нём пароли, токены и другую конфиденциальную информацию категорически не рекомендуется.
  • Привязка к домену — доступ к данным возможен только из того же домена, на котором они были сохранены.
  • Синхронное выполнение — Local Storage работает синхронно, что может негативно влиять на производительность при работе с большими объёмами данных.

Примеры использования на практике

  • Сохранение настроек пользователя, например, выбранной темы (светлая/тёмная).
  • Хранение информации из формы, чтобы она не пропала при случайном обновлении страницы.
  • Реализация корзины покупок в интернет-магазине без серверной стороны.
  • Создание офлайн-веб-приложений, которые работают без подключения к сети.

Заключение:

Local Storage — удобный и эффективный способ хранения данных на стороне клиента. Он активно применяется в современных веб-приложениях для повышения удобства пользователей. Однако важно соблюдать осторожность и избегать хранения чувствительной информации.

Теги:

Присоединяйтесь к нашим курсам для углубленного изучения области ИТ. Отправьте запрос для получения подробной информации!