Функция за обобщен тип в TypeScript
В предишните уроки направихме функция за идентичност, която приемаше параметри от обобщен тип. Сега ще се научим да описваме типа на такава функция и да създаваме обобщени интерфейси.
Функцията за обобщен тип може също да бъде
записана и под формата на стрелкова. Нека
декларираме променлива func, на която
ще има тип на обобщена функция:
function myFunc <T> (data: T): T {
return data;
}
let func: <T> (data: T) => T = myFunc;
Може да се зададе и друг символ за обобщения тип на такава променлива. Основното е да се следи, така че имената на типовете да не конфликтират:
function myFunc <T> (data: T): T {
return data;
}
let func: <U> (data: U) => U = myFunc;
Обобщеният тип може да се запише, като се огради сигнатурата на извикване и типът на функцията в къдрави скоби:
function myFunc < T > (data: T): T {
return data;
}
let func: {<U> (data: U): U} = myFunc;
Напишете функция за определяне на дължината на масив от обобщен тип в вариантите, описани в този урок.