Интерфейс за функция в TypeScript

Интерфейс може да се направи не само за обект, но и за функция. За това в тялото на интерфейса се посочва сигнатура на извикване на функцията: параметри за функцията и техните типове, както и типът на резултата от функцията.

Нека разгледаме следния пример. Нека направим тип с помощта на интерфейс IMathFunc. В кръгли скоби ще посочим два числови параметра. На върнатия резултат ще посочим булев тип:

typescriptinterface IMathFunc {
  (num1: number, num2: number): boolean;
}

Сега нека направим функция myFunc на основа на нашия интерфейс:

typescriptlet myFunc: IMathFunc = function(num1: number, num2: number): boolean {
  if(num1 == num2) {
    return true;
  } else {
    return false;
  }
}

console.log(myFunc(2, 2));
Задание 1

Създайте интерфейс за функция, която приема като параметър два низа и връща тези низове, събрани с интервал.

Задание 2

Създайте интерфейс за функция, която приема като параметър число и връща масив от делители на това число.

Задание 3

Създайте интерфейс за функция, която приема като параметър низ и връща масив от думи от този низ.