Programming TypeScript
null, aniqlanmagan, bekor va hech qachon
Download 1.81 Mb.
|
Boris Cherny Programming TypeScript Making Your JavaScript Applications (1)
null, aniqlanmagan, bekor va hech qachonJavaScript-da biror narsaning yo'qligini ifodalash uchun ikkita qiymat mavjud: null va undefined . TypeScript ikkalasini ham qiymat sifatida qo'llab-quvvatlaydi va ular uchun turlar ham bor - ular nima deb atalganini taxmin qilasizmi? Siz tushundingiz, turlar null va undefined deb ataladi . undefined turidagi yagona narsa undefined qiymati va null turidagi yagona narsa null qiymatidir . JavaScript dasturchilari odatda ikkalasini bir-birining oʻrnida ishlatadilar, garchi taʼkidlash joizki, nozik semantik farq bor: aniqlanmagan narsa hali aniqlanmaganligini bildiradi va null qiymat yoʻqligini bildiradi (masalan, siz qiymatni hisoblashga urinib koʻrsangiz, lekin unga duch kelgan boʻlsangiz). yo'lda xatolik yuz berdi). Bu shunchaki konventsiyalar va TypeScript sizni ularga ishontirmaydi, lekin bu farqlash uchun foydali bo'lishi mumkin. Null va undefined dan tashqari , TypeScript ham void va never ga ega . Bular haqiqatan ham aniq, maxsus maqsadli turlar boʻlib, ular mavjud boʻlmagan har xil turdagi narsalar oʻrtasida yanada nozikroq chiziqlarni tortadi: void — hech narsani qaytarmaydigan funksiyaning qaytish turi (masalan, console.log ), va hech qachon hech qachon qaytarilmaydigan funksiya turi emas (masalan, istisno qiladigan funktsiya yoki abadiy ishlaydigan funksiya): // (a) Raqamni yoki nullni qaytaruvchi funksiya funktsiyasi a ( x : raqam ) { agar ( x < 10 ) { qaytish x } qaytish null } // (b) Aniqlanmagan qaytaruvchi funksiya funktsiyasi b() { qaytish aniqlanmagan } // (c) Voidni qaytaruvchi funksiya funktsiyasi c() { ruxsat bering a = 2 + 2 ruxsat bering b = a * a } // (d) Hech qachon qaytarmaydigan funksiya funktsiyasi d() { tashlash TypeError ( "Men doim xato qilaman" )} // (e) Hech qachon qaytarmaydigan boshqa funksiya funktsiyasi e() { while ( true ) { doSomething () } } (a) va (b) mos ravishda null va undefined ni aniq qaytaradi . (c) undefined ni qaytaradi, lekin u buni aniq qaytish bayonoti bilan qilmaydi , shuning uchun biz uni void qaytaradi deymiz . (d) istisno qiladi va (e) abadiy ishlaydi - hech qachon qaytib kelmaydi, shuning uchun biz ularning qaytish turini hech qachon deb aytamiz . Agar noma'lum har bir boshqa turning supertipi bo'lsa, unda hech qachon boshqa har bir turning pastki turi bo'lmaydi. Biz uni pastki tur deb ataymiz . Bu shuni anglatadiki, u boshqa har qanday turga tayinlanishi mumkin va bu turdagi qiymat hech qachon xavfsiz tarzda ishlatilmaydi. Bu asosan nazariy ahamiyatga ega, 15ammo boshqa tillar bilan TypeScript haqida gaplashganda paydo bo'ladigan narsa. 3-2-jadvalda to'rtta yo'qlik turi qanday qo'llanilishi umumlashtiriladi. 3-2-jadval. Biror narsaning yo'qligini bildiruvchi turlar
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