TypeScript функцияларында міндетті емес параметрлер

Функцияның айнымалы саны параметрлерді қабылдауын жасауға болады. Ол үшін параметрлердің бір бөлігін (немесе барлығын) міндетті емес деп жариялау керек.

Параметрдің міндетті емес екенін көрсету үшін оның атынан кейін сұрақ белгісі қою керек.

Біздің функциямызда тегін міндетті емес параметр ретінде жариялайық:

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

Егер функцияны шақырған кезде міндетті емес параметр берілмесе, ол undefined мәнін қабылдайды. Функциямызды осыны ескере отырып өзгертейік:

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

Қысқа тексеру түрін пайдаланып жеңілдетуге болады:

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

Енді функциямызды пайдаланайық. Оны екі параметрмен шақырайық:

typescriptfunc('john', 'smit'); // 'john smit' мәнін қайтарады

Оны бір параметрмен шақырайық:

typescriptfunc('john'); // 'john' мәнін қайтарады
Задание 1

Күн, ай және жыл параметрлері ретінде қабылдайтын және осы күнге сәйкес келетін апта күнін қайтаратын функция жасаңыз. Үш параметрдің барлығы міндетті емес болсын. Егер қандай да бір параметр берілмесе, ол ағымдағы күнге сәйкес мәнді қабылдауы керек.