Διεπαφή Γενικευμένου Τύπου στο TypeScript
Τώρα ας προχωρήσουμε στην περιγραφή της διεπαφής γενικευμένου τύπου για την κλήση συνάρτησης. Ας ορίσουμε σ' αυτήν την υπογραφή κλήσης της συνάρτησης:
interface IFunc {
<T> (data: T): T;
}
Στη συνέχεια, ας δηλώσουμε τη συνάρτηση myFunc και
ας γράψουμε τον κώδικα στο σώμα της:
function myFunc <T> (data: T): T {
return data;
}
let func: IFunc = myFunc;
Έπειτα, ας γράψουμε τη μεταβλητή func, ο τύπος
της οποίας αναφέρεται στο IFunc. Και η ίδια
μεταβλητή καλεί τη συνάρτηση myFunc:
let func: IFunc = myFunc;
Ο πλήρης κώδικας θα μοιάζει με αυτόν:
interface IFunc {
<T> (data: T): T;
}
function myFunc <T> (data: T): T {
return data;
}
let func: IFunc = myFunc;
console.log(func('abcde'));
Μετά την εκτέλεση του κώδικα θα δούμε:
'abcde'