Autor Zpráva
hal_sk
Profil
Zdravím.
Mám string:
var str = {"a":10,"b":20}

a chcem ho premeniť na objekt, z ktorého môžem ťahať dáta cez JS. Použil som:
var data = JSON.parse(str)

ale neviem ako z tohto objektu získať dáta. Skúšal som napr.:
alert(data[0])
, alebo
alert(data.a)
, alebo
data['a']
. Ale bez úspechu. Kde robím chybu?
Witiko
Profil
hal_sk:
Mám string:
Nemáš, to je literálový zápis objektu.
var obj = {"a":10,"b":20}; alert(obj.a);

Toto by byl string:
var str = "{\"a\":10,\"b\":20}", data = JSON.parse(str); alert(data.a);
hal_sk
Profil
Witiko:
Sorry, zle som to napísal sem do fóra.

Chybu som ale robil, že v skutočnom príklade som namiesto premenej "data" použil premennú s názvom "status", čo je asi nejaké vyhradené slovo pre JS a to robilo problém. Použil som iný názov a už je to ok.
Witiko
Profil
hal_sk:
Pokud jsi to deklaroval v globálním jmenném prostoru, tak se to o místo na výsluní pralo s window.status.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0