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'