Típusváltozók a TypeScript-ben
A generikusok koncepciójának jobb megértése érdekében hozzuk létre az első függvényünket - identitásfüggvényt. Egy ilyen függvény pontosan azt adja vissza, amit átadtak neki - ugyanazzal a típussal.
Először írjuk meg a függvényünk változatait külön-külön.
Írjunk egy függvényt, amely paraméterként egy számot vesz fel, és visszaad egy számot:
function func(data: number): number {
return data;
}
Most írjunk egy függvényt, amely paraméterként egy sztringet vesz fel, és visszaad egy sztringet:
function func(data: string): string {
return data;
}
Tegyük fel, hogy most azt szeretnénk, hogy mindezeket egyetlen függvény végezze. Vagyis általánosítást szeretnénk végrehajtani.
Ehhez típusváltozót használunk,
amely eltárolja az adatok típusát. Egy ilyen
változó a függvény paramétereit tartalmazó
zárójelek előtt, szögletes zárójelek között
kerül deklarálásra. Deklaráljunk egy ilyen
változót, adva neki a T nevet
(bármilyen nevet adhatunk):
function func <T>(itt a paraméterek) {
return data;
}
Ezután megjelenik a T változónk,
amelyet felhasználhatunk arra, hogy bele
tegyük a paraméter típusát, majd ezt
megadhassuk a visszatérési érték típusaként.
Adjuk meg a paraméterünk típusát a mi változónk segítségével:
function func <T>(data: T) {
return data;
}
Így az lesz, hogy a paraméter bármilyen
típusban átadható, és ez a típus a mi
T változónkban tárolódik el.
Most használjuk a T változó értékét
a függvény visszatérési értékének
megadásához:
function func <T>(data: T): T {
return data;
}
Most már az lesz, hogy a függvény visszatérési értékének típusa a paraméter típusából fog származni. Ellenőrizzük le.
Hívjuk meg a függvényt egy számmal:
console.log( func(3) ); // kiírja 3-at
Hívjuk meg a függvényt egy sztringgel:
console.log( func('x') ); // kiírja 'x'-et
Készítsen egy függvényt, amely paraméterként vagy két számot, vagy két sztringet fogad el. A függvény eredményeképpen a paraméterek összegét kell visszaadnia.