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