Funktion med generisk type i TypeScript
I de foregående lektioner lavede vi en identitetsfunktion, som tog parametre af en generisk type. Nu vil vi lære at beskrive typen af en sådan funktion og oprette generiske interfaces.
En funktion med en generisk type kan også
skrives som en pilfunktion. Lad os
deklarere en variabel func, som
har typen af en generisk funktion:
function myFunc <T> (data: T): T {
return data;
}
let func: <T> (data: T) => T = myFunc;
Man kan også vælge et andet symbol for den generiske type for en sådan variabel. Det vigtigste er at sikre, at typenavnene ikke kommer i konflikt:
function myFunc <T> (data: T): T {
return data;
}
let func: <U> (data: U) => U = myFunc;
Den generiske type kan skrives ved at indkapsle kald-signaturen og funktionstypen i krøllede parenteser:
function myFunc < T > (data: T): T {
return data;
}
let func: {<U> (data: U): U} = myFunc;
Skriv en funktion til at bestemme længden af et array af en generisk type i de varianter, der er beskrevet i denne lektion.