Utilizzando HTML5 localStorage riesco a trovare l'indice corrispondente a un valore chiave
-
27-09-2019 - |
Domanda
window.localStorage.setItem("Georgia","Atlanta")
var x=window.localStorage.getItem("Georgia")
Ho una lista di 50 stati e la città più grande memorizzato in localStorage. Utilizzando il codice di cui sopra posso facilmente recuperare che Atlanta è la più grande città per "Georgia". C'è un modo semplice per eseguire una ricerca inversa e la ricerca di "Atlanta" e ottenere "Georgia"?
Soluzione
Local Storage è una semplice mappa da chiave a valore, così no. Non esiste un metodo per cercare la chiave per un valore, o più precisamente, il tasto s perché ci potrebbero essere più di uno.
Si potrebbe inoltre memorizzare una tabella di inversione di città-> Stato per ottenere questo risultato:
// 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
mezzi Così ora setItem()
"esiste una relazione tra X e Y" e significa getItem()
"C'è una / qual è il rapporto tra X e Y?"
Idealmente si avrebbe avuto questi in due diverse tabelle di separare ciò che tipo di rapporto si sta parlando (cioè, state-> città e città-> Stato), ma si dovrebbe essere a posto in questo caso semplice.