html5 localstorage verwendet, kann ich den Index auf einen Schlüsselwert finden entsprechende

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

  •  27-09-2019
  •  | 
  •  

Frage

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

ich eine Liste von 50 Staaten haben und die größte Stadt in localstorage gespeichert. Mit dem Code oben ich einfach abrufen kann, dass Atlanta die größte Stadt für „Georgia“ ist. Gibt es einen einfachen Weg, um einen Reverse-Lookup und die Suche nach „Atlanta“ zu tun und bekommt „Georgia“?

War es hilfreich?

Lösung

Local Storage ist eine einfache Karte von Schlüssel-Wert, also nein. Es gibt keine Methode, um die Schlüssel für einen Wert zu suchen, oder genauer gesagt, die Taste s , weil es mehr kann als ein.

Sie können zusätzlich speichern eine Reverse-Tabelle von Stadt-> Zustand, dies zu erreichen:

// 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

So, jetzt setItem() Mittel „gibt es eine Beziehung zwischen X und Y“ und getItem() Mitteln „wird ein / was ist die Beziehung zwischen X und Y?“

Im Idealfall würde man diese in zwei verschiedenen Tabellen zu trennen, was Art von Beziehung Sie sprechen (dh Bundesland-> Stadt und Stadt-> Staat), aber Sie sollten in diesem einfachen Fall in Ordnung sein.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top