Spec-Zone.ru › Web APIs

Хранилище

Базовая версия Широко доступна

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзывы

Интерфейс Storage API веб-хранилища предоставляет доступ к сессионному или локальному хранилищу определенного домена. Он позволяет, например, добавлять, изменять или удалять сохранённые данные.

Для управления, например, сессионным хранилищем домена, выполняется вызов Window.sessionStorage; для локального хранилища — вызов Window.localStorage.

Свойства экземпляра

Storage.length Только для чтения

Возвращает целое число, представляющее количество сохранённых данных в объекте Storage.

Методы экземпляра

Storage.key()

При передаче числа n, этот метод вернёт имя n-го ключа в хранилище.

Storage.getItem()

При передаче имени ключа, вернёт значение этого ключа.

Storage.setItem()

При передаче имени ключа и значения, добавит этот ключ в хранилище или обновит значение ключа, если он уже существует.

Storage.removeItem()

При передаче имени ключа, удалит этот ключ из хранилища.

Storage.clear()

При вызове очистит все ключи в хранилище.

Примеры

Здесь мы получаем доступ к объекту Storage вызывая localStorage. Сначала мы проверяем, содержит ли локальное хранилище элементы данных, используя !localStorage.getItem('bgcolor'). Если содержит, мы запускаем функцию setStyles(), которая получает элементы данных, используя Storage.getItem(), и использует эти значения для обновления стилей страницы. Если нет, мы запускаем другую функцию, populateStorage(), которая использует Storage.setItem() для установки значений элементов, затем запускает setStyles().

if (!localStorage.getItem("bgcolor")) {
  populateStorage();
} else {
  setStyles();
}

function populateStorage() {
  localStorage.setItem("bgcolor", document.getElementById("bgcolor").value);
  localStorage.setItem("font", document.getElementById("font").value);
  localStorage.setItem("image", document.getElementById("image").value);

  setStyles();
}

function setStyles() {
  const currentColor = localStorage.getItem("bgcolor");
  const currentFont = localStorage.getItem("font");
  const currentImage = localStorage.getItem("image");

  document.getElementById("bgcolor").value = currentColor;
  document.getElementById("font").value = currentFont;
  document.getElementById("image").value = currentImage;

  htmlElem.style.backgroundColor = `#${currentColor}`;
  pElem.style.fontFamily = currentFont;
  imgElem.setAttribute("src", currentImage);
}

Примечание: Чтобы увидеть это в действии как полный рабочий пример, обратитесь к нашей Демонстрации веб-хранилища.

Спецификации

Спецификация
HTML
# storage

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
Storage 4 12 3.5 10.5 4 18 6 11 3.2 1.0 ≤37
clear 4 12 3.5 10.5 4 18 6 11 3.2 1.0 ≤37
getItem 4 12 3.5 10.5 4 18 6 11 3.2 1.0 ≤37
key 4 12 3.5 10.5 4 18 6 11 3.2 1.0 ≤37
length 4 12 3.5 10.5 4 18 6 11 3.2 1.0 ≤37
removeItem 4 12 3.5 10.5 4 18 6 11 3.2 1.0 ≤37
setItem 4 12 3.5 10.5 4 18 6 11 3.2 1.0 ≤37

См. также

  • Использование API веб-хранилища
  • Window.localStorage
  • Window.sessionStorage
  • CacheStorage

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Storage

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API