Ogabek Yuldoshev

TypeScript & JavaScript Developer | Focused on Full-Stack Problem Solving, Open Source, and Dev Tooling

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?

  1. 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.
  2. So‘ngra rekursiv ravishda Uppercase<Tail> orqali qolgan qismini transformatsiya qilamiz.
  3. 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