Mam pytanie dotyczące słownika Javascript. Mam słownika, w którym pary klucz-wartość są dodawane dynamicznie tak:Jak znaleźć wartość za pomocą klucza w słowniku javascript
var Dict = []
var addpair = function (mykey , myvalue) [
Dict.push({
key: mykey,
value: myvalue
});
}
wezwę tej funkcji i przekazać go różne klucze i wartości. Ale teraz chcę odzyskać swoją wartość w oparciu o klucz, ale nie jestem w stanie tego zrobić. Czy ktoś może mi powiedzieć właściwą drogę?
var givevalue = function (my_key) {
return Dict["'" +my_key +"'"] // not working
return Dict["'" +my_key +"'"].value // not working
}
Jak mój klucz jest zmienna, nie mogę używać Dict.my_key
Dzięki.
Witam, mogę to zrobić odwrotnie, znajdując klucz używając wartości –
Nie tak łatwo. Będziesz musiał wykonać pętlę, próbując każdej wartości w obiekcie, aż uzyskasz właściwą wartość, a następnie zwrócisz ten klucz. Problem polega na tym, że mogą istnieć dwie wartości takie same, więc musisz umieścić kod w addpair(), aby zapobiec duplikatom. –
Tablice w JavaScript * do * używają łańcuchów jako kluczy, a wszystko, co spróbujesz użyć jako indeksu tablicy, zostanie zmodelowane do ciągu znaków za kulisami. Możesz to potwierdzić, tworząc obiekt za pomocą metody 'toString' i używając go jako indeksu tablicy. Będzie używał każdej zwróconej metody 'toString'. –