Enumerasi sebagai Jenis dalam TypeScript
Setiap enumerasi mencipta jenis data
tersendiri. Mari kita sebagai contoh untuk
pembolehubah yang menyimpan musim semasa,
tetapkan jenis Season:
let current: Season;
Mari kita catatkan nombor musim ke dalam pembolehubah kita:
let current: Season = Season.Winter;
console.log(current); // 0
Anda boleh menyatakan nombor musim secara manual:
let current: Season = 3;
Namun, jika cuba merekodkan data jenis lain, contohnya, rentetan, maka akan berlaku ralat:
let current: Season = 'str'; // akan berlaku ralat
Malangnya, julat nilai tidak dikesan dan anda boleh merekodkan nombor yang tiada dalam enumerasi kami:
let current: Season = 7; // tiada ralat
Apabila disemak menggunakan operator typeof
pembolehubah kami akan mengembalikan jenis nombor:
let current: Season = 3;
console.log(typeof current); // "number"
Kesimpulannya, boleh dikatakan bahawa jenis sedemikian tidak disemak dengan terlalu ketat dan oleh itu nilainya diragui.