Volitelné parametry funkcí v TypeScriptu

Lze vytvořit funkci, která přijímá proměnný počet parametrů. K tomu je třeba deklarovat část parametrů (nebo všechny) jako volitelné.

Chcete-li označit, že parametr je volitelný, za jeho názvem je třeba uvedení otazníku.

Pojďme v naší funkci deklarovat příjmení jako volitelný parametr:

typescriptfunction func(first: string, last?: string) {
  return first + ' ' + last;
}

Pokud při volání funkce není volitelný parametr zadán, přijme hodnotu undefined. Pojďme upravit naši funkci s ohledem na toto:

typescriptfunction func(first: string, last?: string) {
  if (last !== undefined) {
    return first + ' ' + last;
  } else {
    return first;
  }
}

Lze to zjednodušit pomocí zkrácené formy kontroly:

typescriptfunction func(first: string, last?: string) {
  if (last) {
    return first + ' ' + last;
  } else {
    return first;
  }
}

Nyní naši funkci použijme. Zavoláme ji s dvěma parametry:

typescriptfunc('john', 'smit'); // vrátí 'john smit'

Zavoláme ji s jedním parametrem:

typescriptfunc('john'); // vrátí 'john'
Задание 1

Vytvořte funkci, která přijímá parametry den, měsíc a rok, a vrací den v týdnu odpovídající tomuto datu. Nechť jsou všechny tři parametry volitelné. Pokud nějaký parametr není předán, měl by přijmout hodnotu odpovídající aktuálnímu datu.