Использование HTML5 LocalStorage Могу ли я найти индекс, соответствующий значению ключей
-
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?»
В идеале вы бы имели это в двух разных таблицах, чтобы отделить, какие виды отношений вы говорите (то есть, штат-> город и город-> штат), но вы должны быть в порядке в этом простом случае.