Programming TypeScript


funktsiyasi xarita < T , U >


Download 1.81 Mb.
bet59/206
Sana01.11.2023
Hajmi1.81 Mb.
#1737990
1   ...   55   56   57   58   59   60   61   62   ...   206
Bog'liq
Boris Cherny Programming TypeScript Making Your JavaScript Applications (1)

funktsiyasi xarita < T , U > ( massiv : T [], f : ( element : T ) => U ) : U [] {
ruxsat bering natija = []
uchun ( ruxsat i = 0 ; i < massiv . uzunligi ; i ++ ) {
natija [ i ] = f ( massiv [ i ])
}
qaytish natija
}
Bizga aynan ikkita umumiy tur kerak: massiv a'zolarining kiradigan turi uchun T va chiqadigan massiv a'zolarining turi uchun U. Biz T lar massivida va T ni oladigan va uni U ga moslashtiruvchi xaritalash funktsiyasidan o'tamiz . Nihoyat, biz U lar qatorini qaytaramiz .

Standart kutubxonada filtr va xarita
Filtr va xarita uchun bizning ta'riflarimiz TypeScript bilan ta'minlanganlarga juda o'xshash:
interfeys Massiv < T > {
filtr (
callbackfn : ( qiymat : T , indeks : raqam , massiv : T []) => har qanday ,
thisArg? : har qanday
) : T [] xaritasi < U > (
callbackfn : ( qiymat : T , indeks : raqam , massiv : T []) => U ,
thisArg? : har qanday
) : U []
}
Biz hali interfeyslarni ko'rib chiqmadik, ammo bu ta'rif filtr va xarita T tipidagi massivdagi funksiyalar ekanligini aytadi . Ularning ikkalasi ham callbackfn funktsiyasini va funktsiya ichidagi buning turini oladi.
filtr butun Array interfeysiga kiritilgan umumiy T dan foydalanadi . map T dan ham foydalanadi va faqat xarita funksiyasiga kiritilgan ikkinchi umumiy U ni qo'shadi . Bu shuni anglatadiki , siz massivni yaratganingizda TypeScript aniq turni T ga bog'laydi va ushbu massivdagi filtrlash va xaritalash uchun har bir qo'ng'iroq o'sha aniq turni baham ko'radi. map ga har safar qo'ng'iroq qilganingizda , bu qo'ng'iroq allaqachon bog'langan T ga kirish huquqidan tashqari U uchun o'zining bog'lanishiga ega bo'ladi .
JavaScript standart kutubxonasidagi ko'p funksiyalar umumiydir, ayniqsa Array prototipidagi funksiyalar. Massivlar har qanday turdagi qiymatlarni o'z ichiga olishi mumkin, shuning uchun biz bu turni T deb ataymiz va " .push T tipidagi argumentni oladi " yoki " .T s massivdan U s massivigacha xaritalarni xaritalash " kabi narsalarni aytishimiz mumkin .

Download 1.81 Mb.

Do'stlaringiz bilan baham:
1   ...   55   56   57   58   59   60   61   62   ...   206




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling