Yleistyneen tyypin funktio TypeScriptissä
Edellisissä oppitunneilla teimme identiteettifunktion, joka hyväksyi yleistyneen tyypin parametrit. Nyt opimme kuvailemaan tällaisen funktion tyypin ja luomaan yleistyneitä rajapintoja.
Yleistyneen tyypin funktion voi myös
kirjoittaa nuolifunktiona. Esitellään
muttuja func, jolla on
yleistetyn funktion tyyppi:
typescriptfunction myFunc <T> (data: T): T {
return data;
}
let func: <T> (data: T) => T = myFunc;
Voit antaa eri symbolin yleistetylle tyypille tälle muuttujalle. Tärkeää on varmistaa, että tyyppien nimet eivät ole ristiriidassa:
typescriptfunction myFunc <T> (data: T): T {
return data;
}
let func: <U> (data: U) => U = myFunc;
Yleistetyn tyypin voi kirjoittaa sulkemalla kutsusignaaturin ja funktion tyypin aaltosulkeisiin:
typescriptfunction myFunc < T > (data: T): T {
return data;
}
let func: {<U> (data: U): U} = myFunc;
Задание 1
Kirjoita funktio yleistetyn tyypin taulukon pituuden määrittämiseksi tässä oppitunnissa kuvatuissa vaihtoehdoissa.