TypeScript’da Uppercase Utility Type-ni o'zingiz yozib ko'rganmisiz?
TypeScript'da Uppercase<T> kabi utility type'lar bizga string tiplar ustida powerful compile-time transformatsiyalar qilish imkonini beradi.TypeScript'da Uppercase<T> kabi utility type'lar bizga string tiplar ustida powerful compile-time transformatsiyalar qilish imkonini beradi. Lekin ba’zida ularni o‘zimiz yozib ko‘rish orqali yanada chuqur tushunamiz.
Misol uchun, quyidagi Uppercase<T> implementatsiyasi stringni har bir harfini katta harfga o‘zgartiradi, lekin biz bu transformatsiyani Chars degan qo‘lda yozilgan xarita (map) orqali amalga oshiryapmiz.
💡 Bu yerda nima bo'lyapti?
- T string bo‘lsa, uni First va Tail deb ikkiga ajratamiz.
First harfni Chars map orqali tekshiramiz — agar mavjud bo‘lsa, katta harfga o‘zgartiramiz. - So‘ngra rekursiv ravishda Uppercase<Tail> orqali qolgan qismini transformatsiya qilamiz.
- Stringning oxiriga yetganda (T extends ''), bo‘sh string bilan rekursiya tugaydi.
🧠 Natijada, biz recursive conditional types va distributive string literal pattern matching orqali real Uppercase transformation yasadik!
Agar siz ham typesystemni chuqurroq tushunmoqchi bo‘lsangiz — mana shunaqa kichik eksperimenti yozib ko‘ring 👨💻
#typescript #typelevelprogramming #generics #utilitytypes #codewithme #devtips #softwareengineering