TypeScriptда умумлашган тур функцияси
Олдинги дарсларда биз параметрлари умумлашган турдаги функция-аниятни яратган эдик. Энди биз бундай функциянинг турини тасвирлаш ва умумлашган интерфейсларни яратишни ўрганамиз.
Умумлашган турдаги функцияни стрелка
шаклида ҳам ёзиш мумкин. Келинг
func ўзгарувчисини эълон қилайлик, унинг
тури умумлашган функция бўлади:
function myFunc <T> (data: T): T {
return data;
}
let func: <T> (data: T) => T = myFunc;
Бундай ўзгарувчи учун умумлашган тур учун бошқа символ белгилаш мумкин. Асосий жиҳат - тур номлари нозик келмаслигини кузатиш:
function myFunc <T> (data: T): T {
return data;
}
let func: <U> (data: U) => U = myFunc;
Умумлашган турни, чақириш имзоси ва функция турини кавич ичига олиб, қайд этиш мумкин:
function myFunc < T > (data: T): T {
return data;
}
let func: {<U> (data: U): U} = myFunc;
Ушбу дарсда тасвирланган вариантларда умумлашган турдаги массив узунлигини аниқлаш учун функция ёзинг.