Использование HTML5 LocalStorage Могу ли я найти индекс, соответствующий значению ключей

StackOverflow https://stackoverflow.com/questions/3442910

  •  27-09-2019
  •  | 
  •  

Вопрос

window.localStorage.setItem("Georgia","Atlanta") 
var x=window.localStorage.getItem("Georgia")

У меня есть список из 50 государств и крупнейший город, хранящийся в LocalStorage. Используя код выше, я могу легко получить, что Atlanta является крупнейшим городом для «Грузии». Есть ли простой способ сделать обратный поиск и поиск «Атланты» и получите «Грузию»?

Это было полезно?

Решение

Локальное хранилище - это простая карта из ключа к стоимости, поэтому нет. Нет способа найти ключ для значения, или точнее, ключс Потому что может быть больше одного.

Вы можете дополнительно хранить обратный стол города-> государство, чтобы выполнить это:

// Georgia's largest city is Atlanta
window.localStorage.setItem("Georgia", "Atlanta") 

// What is Georgia's largest city?
var x=window.localStorage.getItem("Georgia") // returns Atlanta

// Atlanta is in Georgia
window.localStorage.setItem("Atlanta", "Georgia")

// What state does Atlanta belong to?
var y=window.localStorage.getItem("Atlanta") // returns Georgia

А сейчас setItem() означает «есть отношения между X и Y» и getItem() Средства «Есть ли отношение между X и Y?»

В идеале вы бы имели это в двух разных таблицах, чтобы отделить, какие виды отношений вы говорите (то есть, штат-> город и город-> штат), но вы должны быть в порядке в этом простом случае.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top