Általános típusú függvény a TypeScript-ben

Az előző leckékben készítettünk egy identitásfüggvényt, ami általános típusú paramétereket vett át. Most megtanuljuk, hogyan írhatjuk le egy ilyen függvény típusát és hogyan készíthetünk általános interfészeket.

Az általános típusú függvényt nyílfüggvény formájában is leírhatjuk. Deklaráljunk egy func változót, aminek általános függvény típusa van:

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

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

Beállíthatunk egy másik szimbólumot is a változó általános típusához. A lényeg, hogy figyeljünk arra, hogy a típusnevek ne ütközzenek:

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

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

Az általános típus felírható úgy is, hogy a hívási aláírást és a függvény típusát kapcsos zárójelek közé zárjuk:

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

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

Írjon függvényt egy általános típusú tömb hosszának meghatározására a leckében leírt változatokban.