TypeScripti üldistatud tüübi funktsioon
Eelmistes tundides tegime identiteedifunktsiooni, mis võttis vastu üldistatud tüübi parameetrid. Nüüd õpime kirjeldama sellise funktsiooni tüüpi ja looma üldistatud liideseid.
Üldistatud tüübi funktsiooni saab kirjutada
ka noolefunktsioonina. Deklareerime
muutuja func, millel on
üldistatud funktsiooni tüüp:
function myFunc <T> (data: T): T {
return data;
}
let func: <T> (data: T) => T = myFunc;
Saab määrata ka teise sümboli sellise muutuja üldistatud tüübile. Peamine on jälgida, et tüüpide nimed ei konfliktiks:
function myFunc <T> (data: T): T {
return data;
}
let func: <U> (data: U) => U = myFunc;
Üldistatud tüübi saab kirjutada, pannes käivitamise signatuuri ja funktsiooni tüübi lokkis sulgudesse:
function myFunc < T > (data: T): T {
return data;
}
let func: {<U> (data: U): U} = myFunc;
Kirjutage funktsioon üldistatud tüübi massiivi pikkuse määramiseks selles tunnis kirjeldatud variantides.