Využij akce až 30 % zdarma při nákupu e-learningu. Více informací. Zároveň je tento týden sleva až 80 % na e-learning týkající se C# .NET
Hledáme nového kolegu do redakce - 100% home office, 100% flexibilní pracovní doba. Více informací.
discount week 30 halloween
Avatar
idc
Člen
Avatar
idc:25.10.2013 16:38

Ahoj, nedávno jsem začal dělat v JavaScriptu a narazil jsem na problém.
Mám funkci, které předávám jako argument pole. Chci aby mi tato funkce ovlivnila i moje globálně definované pole. V C# k tomu slouží ref a v C++ pokud se nepletou ukazatelé. Jak docílit stejného výsledku v JS? Díky za odpověď.

function newValues(endArray) {

}
 
Odpovědět
25.10.2013 16:38
Avatar
Silvinios
Redaktor
Avatar
Silvinios:31.10.2013 19:07

Rozumím správně, že se snažíš o něco takového?

var globalniPole = [1,2];
function funkce(pole) {
   pole.push(3); // vloží 3 na konec pole
}
funkce(globalniPole);
alert(globalniPole); // v globálním poli jsou čísla 1,2,3
 
Nahoru Odpovědět
31.10.2013 19:07
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na idc
David Čápka:31.10.2013 19:09

Ref slouží úplně k něčemu jinému, jelikož je pole objekt, tak se ti ovlivní stejně. Mám za to, že to platí i v JS. Globálním datům se vyhýbej, zaprvé nejsou potřeba a zadruhé přináší jen problémy.

Nahoru Odpovědět
31.10.2013 19:09
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Odpovídá na David Čápka
Zdeněk Pavlátka:31.10.2013 19:20

Jako globální se hodí jen konstanty a to jen někdy. Mimochodem jde v JavaScriptu vytvořit konsanta?

Nahoru Odpovědět
31.10.2013 19:20
Kolik jazyků umíš, tolikrát jsi programátor.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.