JavaScript – příkaz return a proměnné

4. května 2000

Vážení čtenáři, vítám vás v devátém díle seriálu o JavaScriptu. Minulý díl ukazoval, jak si můžeme napsat vlastní funkce, teď se budeme věnovat dokončení pojednání o funkcích.

V každé funkci můžete použít speciální příkaz, který se jmenuje return. Ten způsobí, že se provádění příkazu ve funkci okamžitě ukončí. Například v následujícím příkladě se příkazy za return nevykonají:

function test1()
{
    alert("Před příkazem return");
    return;
    alert("Po příkazu return");
}

Pokud si tento příklad vyzkoušíte, zjistíte, že se vypíše pouze zpráva „Před příkazem return“, zatímco následující už ne. Příkaz return utnul funkci. Jinak řečeno, return způsobil předčasné ukončení funkce. A zde si můžete příklad vyzkoušet:

Po kliknutí sem se spustí funkce test1

Příkaz return se smí použít pouze uvnitř funkce, jinde nemá smysl. Může být velmi užitečný, pokud se spojí s různými podmínkami. Ale o tom později. Příkaz return má ještě jednu užitečnou vlastnost, a to, že umožňuje, aby funkce vrátila nějakou hodnotu po svém ukončení. Můžete třeba napsat funkci na sčítání takto:

function scitani(a,b)
{
    return a+b;
}

Takto napsaná funkce scitani očekává, že dostane dvě čísla, která jsou pojmenována. První má jméno a, druhé b. Evidentně se uvnitř funkce provádí sčítání obou čísel, a to pomocí a+b. Změna je v tom, že tento výpočet je za příkazem return. Význam je následující: Pokud za return uvedeme nějakou hodnotu, je funkce schopná tuto hodnotu vrátit do toho místa, kde jsme ji zavolali.

Jak můžeme využít hodnotu, kterou nám funkce vrací? Je to jednoduché, můžeme hodnotu například zobrazit v okně. Třeba následující příklad nám v okně ukáže, kolik je 1+1:

<a href="javascript:void alert(scitani(1,1));">Kolik je 1+1?</a>

A jak to pracuje? JavaScript nejdříve zavolá funkci scitani, které předá dvě hodnoty (dvě čísla, obě dvě jsou jedničky). Potom JavaScript číhá, jestli funkce scitani náhodou nevrátila hodnotu pomocí příkazu return uvnitř funkce scitani. Funkce scitani je napsaná tak, že vrátí součet 1+1, tedy číslo dva. Jakmile JavaScript zjistí, že bylo vráceno číslo 2, hned ho předá do příkazu alert. Jinak řečeno, provede příkaz alert, jako kdyby byl napsán jako alert(2). Výsledkem je, že se otevře okno, a v něm bude napsaná dvojka. Zde si to můžete vykoušet:

Kolik je 1+1?

Zde je uveden zápis příkladu, jak by vypadal v HTML stránce:

<html>
<head>
<title>Využití hodnoty z funkce</title>
<script type="text/javascript" language="JavaScript"><!–
fucntion scitani()
{
    return 1+1;
}
// –>
</script> </head>
<body>
<a href="javascript:void alert(scitani(1,1));">Kolik je 1+1?</a>
</body>
</html>

Podobně si můžete uložit číslo, které funkce vrátí, a použít jej někdy později. Proměnná, řečeno dětským jazykem, slouží jako šuplík, do které si můžete uložit jakoukoli hodnotu. Do proměnné můžete uložit cokoli, ať už číslo, nebo text, či něco jiného. JavaScript nekontroluje typ hodnoty, a tak to dokonce můžete střídat. Třeba můžete do proměnné uložit nějaké číslo, později do té samé proměnné třeba text.

Každá proměnná musí mít jméno, a toto jméno zase musí být složeno pouze z anglických písmen, a nebo číslic. Jméno proměnné ovšem musí začínat písmenem. Ještě je dovoleno použít znak podtržítko (_), který je rovnocenný písmenu. Pro příklad v následujícím zápisu si založíme proměnnou s názvem vysledek, a poté do této proměnné uložíme, kolik je 2+3:

<script type="text/javascript" language=<JavaScript"><!–
var vysledek;
vysledek = scitani(2,3);
// –>
</script>

Popíšu podrobněji tento příklad. Slovem var dávám JavaScriptu najevo, že chci založit novou proměnnou. Za slovem var je jméno proměnné, tedy vysledek. Založil jsem tedy novou proměnnou výsledek. Tato akce, tedy založení proměnné končí středníkem (;). V JavaScriptu, jak si můžete všimnout, jsou středníky poměrně často. Uzavírá se tak totiž každý příkaz. Na dalším řádku v příkladu je použita funkce scitani, která nám vypočítá, kolik je 2+3. Vrácená hodnota z funkce scitani (číslo 5) se uloží do proměnné vysledek. A je to. V proměnné vysledek je uloženo číslo 5.

Celou akci je možné zkrátit, a najednou založit proměnnou a zároveň do ní uložit hodnotu:

<script type="text/javascript" language=<JavaScript"><!–
var vysledek = scitani(2,3);
// –>
</script>

Hodnotu uloženou v proměnné můžete využít kdekoli prostě jenom tím, že zapíšete její jméno. Například zápis alert(vysledek) vám otevře okno ve kterém se objeví číslo 5. Všimněte si toho, že je to poměrně jednoduché. Pokud někdy použiji text v uvozovkách ("), nebo apostrofech (‚), potom je použit přímo tento text. Například zápis alert(„ahoj“), nebo alert(‚ahoj‘) vypíše přímo text ahoj. Pokud ale použiji text bez uvozovek, nebo apostrofů, potom se snaží JavaScript najít proměnnou. Tedy alert(ahoj) se snaží najít proměnnou ahoj, a potom vypíše hodnotu, která je v proměnné s názvem ahoj uložena. Pokud proměnná s názvem ahoj neexistuje, potom nastává chyba, a JavaScript si začne stěžovat.

A to je pro tento díl vše.

Štítky: Články

Mohlo by vás také zajímat

Nejnovější

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *