数値列挙の場合
const enum Color {
Red,
Blue,
Green
}
console.log(Color.Green) // 2
文字列列挙の場合
const enum Color2 {
Red = "#f00",
Blue = "#00f",
Green = "#0f0"
}
console.log(Color2.Green) // "#0f0"
- 「型名は大文字で始まる単数系」「キーは大文字で始める」とするのが一般的。
- TypeScriptバージョン4までは
const myColor: Color = 3
のように存在しない値を代入できたが、バージョン5からはエラーとなるように改善された。
[参考サイト]
https://qiita.com/KokiSakano/items/d7d164fd00dcf475165d
- constをつけないと
console.log(Color[2])
のように[]を使って値でアクセスすることができる。
ただし、console.log(Color[3])
はundefinedとなり、存在しない値の場合でもエラーにならないのでconstを付けた方が良い