Autor Zpráva
Petrinec
Profil *
Zdravíčko. Snažím se v javascriptu předat objekt jako parametr funkce ale bohužel se nedaří.

Funkce vypadá následovně:

funkce1(text, 'fce_proved(12, ' + objekt + ')');

Při spuštění funkce1 zpracuje text a poté pomocí eval spustí ten druhý parametr s fce_proved, bohužel to ale nešlape a místo toho dostanu "missing ] after element list".
Co tedy dělám špatně? Předpokládám že to neumí takhle předávat ten objekt, ale jak ho mám tedy předat?
Kajman
Profil
Petrinec:
Zkuste místo stringů a evalu použít anonymní funkci...

function funkce1(text,fce)
{
    window.alert(text);
    fce();
}
funkce1(text, function(){fce_proved(12, objekt);});
Petrinec
Profil *
Výborně, to funguje. Ale jak je možné že ten objekt je definovaný když není předán v function(ojekt) ?
ShiraNai7
Profil
Petrinec:
http://www.zdrojak.cz/clanky/javascript-a-oblast-pusobnosti-promennych-dil-prvni/
Petrinec
Profil *
Tak ještě jedna poslední věc, co když potřebuji použít jednu proměnnou v cíli?
Tedy:

function funkce1(text,fce)
{
    window.alert(text);
    var test = 123456;
    fce();
}
funkce1(text, function(){fce_proved(12, objekt); alert(test)});
1Pupik1989
Profil
předáš ho jako parametr do volané funkce.

function funkce1(text,fce)
{
    window.alert(text);
    var test = 123456;
    fce(test);
}
funkce1(text, function(test){fce_proved(12, objekt); alert(test)});

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: