ტიპის ზოგადი ინტერფეისი TypeScript-ში

ახლა კი გადავიდეთ ფუნქციის გამოძახების ტიპის ზოგადი ინტერფეისის აღწერაზე. დავსახოთ მასში ფუნქციის გამოძახების ხელმოწერა:

typescriptinterface IFunc {
  <T> (data: T): T;
}

შემდეგ გამოვაცხადოთ ფუნქცია myFunc და დავწეროთ კოდი მის ტანში:

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

let func: IFunc = myFunc;

შემდეგ დავწეროთ ცვლადი func, რომლის ტიპი მიბმულია IFunc-ზე. ხოლო თავად ცვლადი იძახებს ფუნქციას myFunc:

typescriptlet func: IFunc = myFunc;

სრული კოდი ასე გამოიყურება:

typescriptinterface IFunc {
  <T> (data: T): T;
}

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

let func: IFunc = myFunc;

console.log(func('abcde'));

კოდის შესრულების შემდეგ ჩვენ დავინახავთ:

typescript'abcde'