Programming TypeScript
turi < T > filtri = { ( massiv : T [], f : ( element : T ) => mantiqiy
Download 1.81 Mb.
|
Boris Cherny Programming TypeScript Making Your JavaScript Applications (1)
turi < T > filtri = {
( massiv : T [], f : ( element : T ) => mantiqiy ) : T [] } ruxsat bering filtr : Filtr < raqam > = // ... turi Filtr = < T > ( massiv : T [], f : ( element : T ) => mantiqiy ) => T [] ruxsat filtr : filtr = // ... turi < T > filtri = ( massiv : T [], f : ( element : T ) => mantiqiy ) => T [] ruxsat filtr : < string > filtri = // ... funktsiyasi filtr < T > ( massiv : T [], f : ( element : T ) => mantiqiy ) : T [] { // ... } To'liq qo'ng'iroq imzosi, T bilan individual imzo. T bitta imzoga qamrovli bo'lganligi sababli , siz filter tipidagi funksiyani chaqirganingizda TypeScript ushbu imzodagi T ni aniq turga bog'laydi . Filtrlash uchun har bir qo'ng'iroq T uchun o'z bog'lanishini oladi . To'liq qo'ng'iroq imzosi, T barcha imzolarni qamrab oladi . T Filter turining bir qismi sifatida e'lon qilinganligi sababli (muayyan imzo turining bir qismi emas), TypeScript Filter tipidagi funksiyani e'lon qilganingizda T ni bog'laydi . Like , lekin to'liq imzo o'rniga stenografiya qo'ng'iroq imzosi. Like , lekin to'liq imzo o'rniga stenografiya qo'ng'iroq imzosi. Nomlangan funksiya chaqiruv imzosi, T imzoga qamrovli. Filtrni chaqirganingizda TypeScript aniq turni T ga bog'laydi va filtrlash uchun har bir qo'ng'iroq T uchun o'z bog'lanishini oladi . xarita funksiyasini yozamiz . map filter ga juda oʻxshaydi , lekin massivdan elementlarni olib tashlash oʻrniga har bir elementni xaritalash funksiyasi bilan oʻzgartiradi. Amalga oshirishning eskizini chizishdan boshlaymiz: funktsiyasi xarita ( massiv : noma'lum [], f : ( element : noma'lum ) => noma'lum ) : noma'lum [] { ruxsat bering natija = [] uchun ( ruxsat i = 0 ; i < massiv . uzunligi ; i ++ ) { natija [ i ] = f ( massiv [ i ]) } qaytish natija } Davom etishdan oldin, har bir noma'lumni qandaydir turdagi bilan almashtirib, xaritani qanday qilib umumiy qilish haqida o'ylab ko'ring. Sizga qancha generik kerak? O'zingizning generiklaringizni qanday e'lon qilasiz va ularni xarita funktsiyasiga qamrab olasiz? array , f va qaytish qiymatining turlari qanday bo'lishi kerak ? Tayyormisiz? Agar siz buni avval o'zingiz qilishga urinmagan bo'lsangiz, men sizni sinab ko'rishingizni maslahat beraman. Siz buni qila olasiz. Haqiqatan ham! OK, endi qichqirmang. Mana javob: Download 1.81 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling