Объем сессииStorage и localStorage - PullRequest
94 голосов
/ 16 марта 2012

Я прочитал некоторую документацию по sessionStorage и localStorage, но я не понимаю, что такое область действия: домен, конкретная страница?

Например, если у меня есть следующие страницы:

http://example.com/products.aspx?productID=1

http://example.com/products.aspx?productID=2

http://example.com/services.aspx?serviceID=3

И если на каждой из перечисленных выше страниц я запускаю (значение idvalue в строке запроса):

localStorage.setItem('ID',idvalue);

Собираюсь ли я в конечном итоге хранить 3 разных значения или значения будут перезаписывать друг друга?

Ответы [ 2 ]

135 голосов
/ 20 марта 2012

Сеанс хранения:

  1. Значения сохраняются только до тех пор, пока окно или вкладка, в которых они сохранены.

  2. Значения видны только в окне или вкладке, которые их создали.

Локальное хранилище:

  1. Значения сохраняются в окне и время жизни браузера.

  2. Значения являются общими для всех окон или вкладок, работающих в одном источнике.

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

81 голосов
/ 16 марта 2012

Значения будут перезаписывать друг друга. Каждая пара ключ-имя уникальна для протокола и домена независимо от путей.

Соответствующий домен можно изменить с помощью свойства document.domain.

  • sub.example.com -> example.com возможно (поддомен)
  • sub.example.com -> other.example.com невозможно
...