TypeScript'te Enum Türü
Her enum kendi
türünü oluşturur.
Hadi örnek olarak, mevcut mevsimi tutan
bir değişkene Season
türünü atayalım:
let current: Season;
Değişkenimize mevsim numarasını atayalım:
let current: Season = Season.Winter;
console.log(current); // 0
Mevsim numarasını manuel olarak belirtebiliriz:
let current: Season = 3;
Ancak farklı türde veri yazmaya çalışırsak, örneğin bir string, hata alırız:
let current: Season = 'str'; // hata verecek
Ne yazık ki, değer aralığı takip edilmez ve enum'ımızda olmayan bir numara yazılabilir:
let current: Season = 7; // hata vermeyecek
typeof operatörü ile kontrol edildiğinde
değişkenimiz sayısal tür döndürür:
let current: Season = 3;
console.log(typeof current); // "number"
Özetle, bu türün çok sıkı bir şekilde kontrol edilmediğini ve bu nedenle değerinin şüpheli olduğunu söyleyebiliriz.