Programming TypeScript
Download 1.81 Mb.
|
Boris Cherny Programming TypeScript Making Your JavaScript Applications (1)
Turlari haqida gapirishDasturchilar turlar haqida gapirganda, ular nimani anglatishini tasvirlash uchun aniq, umumiy lug'atga ega bo'lishadi. Biz ushbu kitob davomida ushbu lug'atdan foydalanamiz. Aytaylik, sizda ba'zi bir qiymatni oladigan va bu qiymatni o'ziga ko'paytiruvchi qaytaradigan funksiya bor: funktsiyasi squareOf ( n ) { qaytish n * n } squareOf ( 2 ) // 4 kvadratOf ( 'z' ) ga baholanadi // NaN ga baholanadi Shubhasiz, bu funksiya faqat raqamlar uchun ishlaydi - agar siz kvadratOf ga raqamdan tashqari biror narsani o'tkazsangiz , natija noto'g'ri bo'ladi. Shunday qilib, biz qiladigan narsa parametr turiga aniq izoh berishdir : funktsiyasi squareOf ( n : raqam ) { qaytish n * n } squareOf ( 2 ) // 4 ga baholanadi squareOf ( 'z' ) // TS2345 xatosi: ''z'' tipidagi argumentni tayinlab bo'lmaydi // "raqam" tipidagi parametr. kvadratOfga raqamdan boshqa narsa bilan qo'ng'iroq qilsak , TypeScript darhol shikoyat qilishni biladi. Bu arzimas misol (biz keyingi bobda funksiyalar haqida ko'proq gaplashamiz), lekin TypeScript-dagi turlar haqida gapirish uchun kalit bo'lgan bir nechta tushunchalarni kiritish kifoya . Oxirgi kod misoli haqida quyidagilarni aytishimiz mumkin: squareOf ning n parametri bilan chegaralangan raqam . 2 qiymatining turi raqamga tayinlanishi mumkin ( ekvivalent: bilan mos keladi ) . Turi izohisiz, squareOf o'z parametrida cheklanmagan va siz unga har qanday turdagi argumentlarni yuborishingiz mumkin. Biz uni cheklab qo'yganimizdan so'ng, TypeScript biz uchun ishlaydi va biz funktsiyamiz deb ataydigan har bir joyni mos argument bilan chaqirishimizni tekshiradi. Ushbu misolda 2 turi raqam bo'lib , kvadratOf ning izoh raqamiga tayinlanishi mumkin , shuning uchun TypeScript bizning kodimizni qabul qiladi; lekin "z" - bu raqamga tayinlanmaydigan string , shuning uchun TypeScript shikoyat qiladi. chegaralar nuqtai nazaridan ham o'ylab ko'rishingiz mumkin : biz TypeScript ga n ning yuqori chegarasi son ekanligini aytdik, shuning uchun kvadratOf ga o'tadigan har qanday qiymat ko'pi bilan son bo'lishi kerak . Agar u raqamdan boshqa narsa bo'lsa (masalan, agar u raqam yoki satr bo'lishi mumkin bo'lgan qiymat bo'lsa ), u n ga tayinlanmaydi . 6-bobda tayinlanish, chegaralar va cheklovlarni rasmiy ravishda aniqlayman . Hozircha siz bilishingiz kerak bo'lgan narsa shuki, biz ma'lum bir turni talab qiladigan joyda turdan foydalanish mumkinmi yoki yo'qmi haqida gaplashish uchun foydalanadigan tildir. 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