Autor Zpráva
jan54
Profil *
Zdravím.. Nefunguje mi predavani hodnot z anonymní funkce - co je spatne? Diky

var xxx;
    function callback(b){ 
             console.log(b); //ok tady je videt spravna hodnota "ABC"
        xxx = b; //pridam hodnotu ABC "ven" do globalni promenne xxx 
    };

    hodnota.get('getABC',function(result){
        callback(result); //vysledek hodnotu ABC poslat do funkce callback
    });
         
    console.log(xxx); //undefined!!!? mela tu byt hodnota ABC ale vypisuje undefined!
shaggy
Profil
jan54:
Možno len hádam, ale z tohto tvojho riadku:
hodnota.get('getABC',function(result){
som nadobudol pocit, že používaš napr. toto (alebo že ide o iné ajax volanie).

Preto je logické, že hodnota xxx nie je definovaná, volanie sa síce uskutoční, ale v momente vypisovania obsahu premennej ešte nedobehlo, čiže nemáš návratovú hodnotu.
_es
Profil
jan54:
Viď [#2]. Spracovanie je asynchrónne. Funkciu callback tam máš práve na to, aby si mohol pracovať s vrátenými dátami v správnom čase.

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: