Heterojen Enumlar
Coddy'nin JavaScript Journey'sinin TypeScript'e Giriş bölümünün bir parçası — ders 55 / 73.
TypeScript ayrıca heterojen enum'ları - aynı bildirim içinde hem dize hem de sayısal üyelerin karışımını içeren enum'ları - destekler.
Heterojen bir enum'ı şu şekilde oluşturabilirsiniz:
enum MixedEnum {
No = 0,
Yes = "YES",
Maybe = 1
}Bu örnekte, No ve Maybe sayısal üyelerdir, buna karşın Yes bir dize üyesidir. TypeScript bu esnekliğe izin verir, ancak heterojen enum'ların pratikte nadiren kullanıldığını belirtmek önemlidir.
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Görev
KolayDize ve sayısal değerleri karıştıran ResponseCode adında heterojen bir enum oluşturun:
Successdeğeri200olarak başlatılmalıErrordeğeri"ERROR"olarak başlatılmalıNotFounddeğeri404olarak başlatılmalıTimeoutdeğeri"TIMEOUT"olarak başlatılmalı
Bir parametre alan handleResponse adında bir fonksiyon oluşturun:
ResponseCodetipindecodeparametresi
Fonksiyon şunları yapmalıdır:
- Yanıt kodunu kontrol etmeli ve değere göre farklı mesajlar yazdırmalıdır
- Eğer kod
ResponseCode.Successise,"Request successful"yazdırmalıdır - Eğer kod
ResponseCode.Errorise,"General error occurred"yazdırmalıdır - Eğer kod
ResponseCode.NotFoundise,"Resource not found"yazdırmalıdır - Eğer kod
ResponseCode.Timeoutise,"Request timed out"yazdırmalıdır - Dönüş tipi
voidolmalıdır
Enum değerlerini göstermek için dört değişken oluşturun:
ResponseCodetipindesuccessCodeoluşturun veResponseCode.Successdeğerini atayınResponseCodetipindeerrorCodeoluşturun veResponseCode.Errordeğerini atayınResponseCodetipindenotFoundCodeoluşturun veResponseCode.NotFounddeğerini atayınResponseCodetipindetimeoutCodeoluşturun veResponseCode.Timeoutdeğerini atayın
Aşağıdaki çıktıları yazdırın:
successCodedeğerini yazdırınerrorCodedeğerini yazdırınnotFoundCodedeğerini yazdırıntimeoutCodedeğerini yazdırınhandleResponsefonksiyonunuResponseCode.Successile çağırınhandleResponsefonksiyonunuerrorCodeile çağırınhandleResponsefonksiyonunu sayısal değer olan404ile çağırın
Kopya kağıdı
TypeScript, aynı bildirim içinde hem dize hem de sayısal üyelerin bir karışımını içeren heterojen enum'ları destekler:
enum MixedEnum {
No = 0,
Yes = "YES",
Maybe = 1
}Heterojen enum'larda sayısal ve dize değerlerini karıştırabilirsiniz. TypeScript bu esnekliğe izin verse de, heterojen enum'lar pratikte nadiren kullanılır.
Kendin dene
// YAPILACAK: Kodunuzu buraya yazın
// ResponseCode enum'ını oluşturun
// handleResponse fonksiyonunu oluşturun
// Gösterim değişkenlerini oluşturun
// Gerekli çıktıları yazdırınBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
TypeScript'e Giriş bölümündeki tüm dersler
1TS ile Başlarken
TypeScript Nedir?Neden TypeScript Kullanılır?İlk TypeScript KodunuzDerleme Süreci ve HatalarÖzet: TS'ye Giriş4Fonksiyonlarla Çalışmak
Parametre ve Dönüş Değerlerini TiplendirmeArrow Fonksiyonlarını Tiplendirme'void' Dönüş Tipi'?' ile Opsiyonel ParametrelerVarsayılan Parametre DeğerleriRest Parametrelerini TiplendirmeFonksiyon Tiplerini TanımlamaÖzet: Tiplendirilmiş Fonksiyonlar Oluşturma2Temel Tipler
Temel Tipler: str, num, boolean'any' Tipi: Kaçış Yolu'unknown' Tipi'null' ve 'undef' ile ÇalışmakTip Çıkarımı İş BaşındaAçık Tip BelirlemeleriÖzet: Temel Tipler Pratiği5Tipler: Takma Adlar, Unionlar ve Kesişimler
İlkel Tipler için Tip Takma AdlarıUnion Tipler ('|')Union Tipler ile ÇalışmakLiteral TiplerKesişim Tipleri ('&')Tip Takma Adlarını BirleştirmeÖzet: Gelişmiş Tip Kombinasyonları8Enumlar
Sayısal Enum Nedir?Sayısal Enum KullanımıString Enum Nedir?String Enum KullanımıHeterojen EnumlarÖzet: Enum Kullanımı3Veri Yapısı: Diziler ve Tuple
Tipli DizilerDiziler için 'readonly' BelirleyicisiTuple Nedir?Tuple Tanımlama ve ErişmeTuple DestructuringReadonly Tuple'larÇok Boyutlu Tipli DizilerDizilerle Spread OperatörüÖzet: Diziler ve Tuple'lar6Nesneleri ve Interface'leri Tiplendirme
Satır İçi Nesne Tipi BelirtimleriNesneler için Type Alias KullanımıInterface'lere GirişInterface'ler ve Type Alias'ların KarşılaştırılmasıOpsiyonel ve Readonly ÖzelliklerInterface ve Tipleri GenişletmeInterface'lere Metot EklemeÖzet: Nesne Yapılarını Tanımlama