Úvod do úlohy

V praxi se často stane, že při volání funkce zapomeneme předat některý argument, nebo ho v daném kontextu ani nepotřebujeme. Bez výchozích hodnot se takový parametr nastaví na undefined a funkce může vracet chybné výsledky. Výchozí (default) parametry umožňují přímo v deklaraci funkce nastavit náhradní hodnoty, které se použijí, pokud volající funkci předá méně argumentů. Díky tomu je kód robustnější, odolný proti chybám a zároveň přehledný.


Teorie a principy

  • Pokud funkce nemá výchozí hodnotu parametru a není předán argument → parametr má hodnotu undefined.

  • Výchozí hodnotu nastavíme přímo v závorce při definici funkce:

  • Defaultní parametr se použije jen tehdy, když hodnota chybí nebo je explicitně undefined.

  • Výchozí parametry nám šetří psaní kontrol typu if (jmeno == undefined) { jmeno = "host"; }.


Praktické příklady kódu

1. Funkce bez výchozího parametru

2. Funkce s výchozím parametrem

3. Více parametrů s kombinací výchozích hodnoty


Typické chyby / záludnosti

  • Zapomenutí výchozích hodnot – vede k undefined.

  • Domněnka, že všechny chybějící argumenty se nastaví na 0 – ve skutečnosti je undefined, pokud není výchozí hodnota.

  • Nevhodné pořadí parametrů – doporučuje se dávat parametry s výchozími hodnotami spíše na konec.

  • Záměna null a undefined – výchozí hodnota se použije jen při undefined, ne při null.


Shrnutí – hlavní body k zapamatování

  • Parametr bez argumentu = undefined.

  • Výchozí hodnotu nastavíme přímo v deklaraci funkce.

  • Defaultní parametr se použije pouze při undefined.

  • Pomáhá předcházet chybám a zjednodušuje kontrolu vstupů.

  • Parametry s výchozími hodnotami je lepší psát na konec seznamu.