Опционални параметри на функции во 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

Направете функција која ги прима параметрите ден, месец и година, и ја враќа неделата, што одговара на овој датум. Нека сите три параметри бидат опционални. Ако некој параметар не е проследен, треба да ја земе вредноста што одговара на тековниот датум.