Úloha 2 – Parametry, argumenty a jejich pořadí ve volání funkce
| Site: | Moodle ZČU |
| Course: | Sada úloh pro procvičení v předmětu KVD/PGM1P (BP Vítek Dolný) |
| Book: | Úloha 2 – Parametry, argumenty a jejich pořadí ve volání funkce |
| Printed by: | Gast |
| Date: | Sunday, 18 October 2026, 5:58 AM |
Úvod do úlohy
Parametry a argumenty jsou základem komunikace mezi funkcí a zbytkem programu. Pokud ale při volání funkce použijeme špatný počet argumentů, nebo je dáme ve špatném pořadí, výsledky nebudou odpovídat našemu očekávání. Proto je nutné rozumět tomu, jak JavaScript přiřazuje hodnoty – vždy postupně, zleva doprava. Kromě toho studenti zjistí, že parametry fungují jako kopie hodnot, takže jejich změna uvnitř funkce se nijak neprojeví na původních proměnných mimo funkci.
Teorie a principy
-
Pořadí parametrů: první argument patří prvnímu parametru, druhý argument druhému parametru atd. → pořadí je zásadní.
-
Počet argumentů:
-
méně argumentů → chybějící parametry mají hodnotu
undefined, -
více argumentů → přebytečné se ignorují.
-
-
Hodnoty vs. reference (pro začátečníky jen základní poznámka): pokud parametrem předáme číslo nebo řetězec, funkce s ním pracuje jako s kopií → změna uvnitř funkce neovlivní původní proměnnou.
Praktické příklady kódu
1. Důležitost pořadí argumentů
2. Méně a více argumentů
3. Změna parametru uvnitř funkce
Typické chyby / záludnosti
-
Nedodržení pořadí argumentů – funkce pracuje s nesprávnými daty.
-
Očekávání, že funkce „doplní“ chybějící hodnoty – místo toho je
undefined. -
Překvapení, že změna parametru neovlivní původní proměnnou – pro čísla a řetězce to neplatí, pracuje se s kopií.
-
Ignorování přebytečných argumentů – studenti se mohou divit, proč se nepoužijí.
Shrnutí – hlavní body k zapamatování
-
Pořadí argumentů musí odpovídat pořadí parametrů.
-
Méně argumentů → chybějící parametry mají
undefined. -
Více argumentů → přebytečné se ignorují.
-
Parametry uvnitř funkce jsou kopie hodnot, změna neovlivní původní proměnné.
Úloha
Zadání (kontext úlohy):
Máš napsat jednoduchou funkci, která vypíše zprávu o tom, kdo a kam cestuje. Jenže pokud při volání zadáš argumenty v jiném pořadí, než funkce očekává, výsledek nedává smysl.
Cíl úlohy:
Student si procvičí práci s pořadím a počtem argumentů při volání funkce.
Vstupní podmínky:
Student pracuje pouze s nově vytvořeným souborem script.js.
Požadovaný výstup:
-
Vytvoř funkci
cesta, která má dva parametry:jmenoamisto. -
Funkce má do konzole vypsat větu: „[jméno] cestuje do [místo].“
-
Zavolej funkci alespoň třikrát:
-
jednou se správným pořadím argumentů,
-
jednou s prohozeným pořadím,
-
jednou jen s jedním argumentem.
-
-
Sleduj, co se vypíše do konzole v každém případě.
Doplňující pokyny:
-
Uvědom si, že chybějící parametr se stane
undefined. -
Přebytečné argumenty funkce ignoruje.
-
Pořadí je zásadní – první hodnota jde do prvního parametru, druhá do druhého.
Řešení úlohy
Co je zde splněno
-
funkce
cestamá dva parametry (jmeno,misto), -
při volání se předávají různé kombinace argumentů,
-
je ukázáno, že pořadí argumentů je zásadní,
-
chybějící parametr je
undefined.
Vylepšení oproti začátečnické verzi
-
použití výchozí hodnoty parametru pro
misto, -
využití šablonového řetězce pro čitelnější skládání textu,
-
zachována klasická
function, takže kód je stále vhodný i pro začátečníky, kteří si potřebují osvojit základní strukturu funkce.
Poznámky
Pokud předáš více než dva argumenty, funkce použije jen první dva, zbytek ignoruje.
Toto chování je v JavaScriptu běžné.