Programming TypeScript


Download 1.81 Mb.
bet98/206
Sana01.11.2023
Hajmi1.81 Mb.
#1737990
1   ...   94   95   96   97   98   99   100   101   ...   206
Bog'liq
Boris Cherny Programming TypeScript Making Your JavaScript Applications (1)

Turi kengaytirish


Turni kengaytirish TypeScript-ning turdagi xulosasi qanday ishlashini tushunish uchun kalit hisoblanadi. Umuman olganda, TypeScript sizning turlaringiz haqida xulosa chiqarishda yumshoq bo'ladi va mumkin bo'lgan eng aniq turdagi emas, balki umumiyroq turdagi xulosa chiqarish tarafida xato qiladi. Bu sizning dasturchi sifatida hayotingizni osonlashtiradi va matn terish mashinasining shikoyatlarini bostirishga kamroq vaqt sarflashni anglatadi.
3-bobda siz allaqachon ishlayotgan turdagi kengayishning bir nechta misollarini ko'rdingiz. Keling, yana bir nechta misollarni ko'rib chiqaylik.
O‘zgaruvchini keyinchalik mutatsiyaga yo‘l qo‘yadigan tarzda (masalan, let yoki var bilan ) e’lon qilganingizda, uning turi literal qiymatidan literal tegishli bo‘lgan asosiy turga kengaytiriladi:
ruxsat bering a = "x" // string let b = 3 // raqam var c = rost // mantiqiy konst d = { x : 3 } // {x: raqam}
enum E { X , Y , Z } ruxsat bering e = E . X // E
O'zgarmas deklaratsiyalar uchun bunday emas:
const a = "x" // 'x' const b = 3 // 3 konst c = rost // rost
enum E { X , Y , Z }
const e = E . X // EX
Turingiz kengaytirilishiga yo'l qo'ymaslik uchun aniq turdagi izohdan foydalanishingiz mumkin:
ruxsat bering a : "x" = "x" // 'x' ruxsat bering b : 3 = 3 // 3 var c : rost = rost // haqiqiy konst d : { x : 3 } = { x : 3 } // {x: 3}
let yoki var yordamida kengaytirilmagan turni qayta tayinlaganingizda , TypeScript uni siz uchun kengaytiradi. TypeScript-ga uni tor bo'lishini aytish uchun dastlabki deklaratsiyangizga aniq turdagi izoh qo'shing:
const a = "x" // 'x' ruxsat bering b = a // qator
const c : "x" = "x" // 'x' ruxsat bering d = c // 'x'
Null yoki undefined ga ishga tushirilgan o'zgaruvchilar har qandayiga kengaytiriladi :

Download 1.81 Mb.

Do'stlaringiz bilan baham:
1   ...   94   95   96   97   98   99   100   101   ...   206




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