Enumeracija kao tip u TypeScript-u
Svaka enumeracija kreira svoj sopstveni
tip podataka. Hajde da, na primer, za
promenljivu koja čuva trenutnu godišnju dob dodelimo
tip Season:
let current: Season;
Zapišimo u našu promenljivu broj godišnje dobi:
let current: Season = Season.Winter;
console.log(current); // 0
Broj godišnje dobi možemo naznačiti ručno:
let current: Season = 3;
Ako pokušamo da upišemo podatke drugog tipa, na primer, string, dobićemo grešku:
let current: Season = 'str'; // biće greška
Nažalost, opseg vrednosti se ne prati i možemo upisati broj koji ne postoji u našoj enumeraciji:
let current: Season = 7; // neće biti greške
Prilikom provere pomoću operatora typeof
naša promenljiva će vratiti numerički tip:
let current: Season = 3;
console.log(typeof current); // "number"
Da sumiramo, možemo reći da se ovaj tip ne proverava naročito strogo i zbog toga je njegova vrednost upitna.