localStorage разные ключи - PullRequest
       9

localStorage разные ключи

0 голосов
/ 10 августа 2011

У меня есть следующее:

localStorage.setItem("list",listoption1);
localStorage.setItem("list",listoption2);
// ...
localStorage.setItem("list",listoption10);

У меня также есть:

localStorage.setItem("settings",settingval);

Я хочу перечислить все параметры списка, но когда я запрашиваю localStorage.key(i), я также получаюзначение из ключа настроек.Можно ли получить все, что хранится только в ключе списка?

1 Ответ

0 голосов
/ 10 августа 2011

localStorage - это хранилище ключей и значений.Поэтому при сохранении ключа list со значением listoption1 значение переменной listoption1 будет сохранено в ключе list.Следующий метод перезапишет этот ключ со значением listoption2.

Извлечение list с помощью localStorage.getItem('list') вернет значение listoption2, поэтому нет способа извлечь все параметры списка, потому что последнийперезапишет предыдущее.

Обновление:

Если вы хотите сохранить хеш (словарь, объект, ...) для вашего ключа.Тогда вам нужно как-то его кодировать.Я бы выбрал JSON.

Пример:

localStorage.setItem("list", JSON.stringify({ listoption1: listoption1, listoption2: listoption2 }));
var options = JSON.deceode(localStorage.getItem("list"));
alert(options.listoption1);
...