Funksjon av generisk type i TypeScript

I de foregående leksjonene lagde vi en identitetsfunksjon, som aksepterte parametere av generisk type. Nå skal vi lære å beskrive typen av en slik funksjon og lage generiske grensesnitt.

En funksjon av generisk type kan også skrives som en pilfunksjon. La oss deklarere en variabel func, som vil ha typen av en generisk funksjon:

typescriptfunction myFunc <T> (data: T): T {
  return data;
}

let func: <T> (data: T) => T = myFunc;

Man kan også bruke et annet symbol for den generiske typen til en slik variabel. Hovedsaken er å sørge for at typenavnene ikke kolliderer:

typescriptfunction myFunc <T> (data: T): T {
  return data;
}

let func: <U> (data: U) => U = myFunc;

Den generiske typen kan skrives ved å sette kall-signaturen og funksjonstypen i krøllparenteser:

typescriptfunction myFunc < T > (data: T): T {
  return data;
}

let func: {<U> (data: U): U} = myFunc;
Задание 1

Skriv en funksjon for å bestemme lengden av en array av generisk type i variantene, beskrevet i denne leksjonen.