Интерфейси навъи умумии дар 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'