在 TypeScript 中,枚举是一种特殊的类型,允许我们定义一组命名的常量。枚举可以使代码更易读和理解。
示例
enum Direction {
Up,
Down,
Left,
Right
}
在这个例子中,我们定义了一个名为 Direction 的枚举,它有四个成员:Up、Down、Left 和 Right。默认情况下,枚举的第一个成员的值为 0,后面的成员的值会自动递增。所以在这个例子中,Up 的值为 0,Down 的值为 1,以此类推。
也可以手动指定枚举成员的值
enum Direction {
Up = 1,
Down,
Left,
Right
}
在这个例子中,Up 的值为 1,Down 的值为 2,以此类推。
你可以使用枚举成员的名字或值来访问枚举成员:
let dir: Direction = Direction.Up;
let dirName: string = Direction[1]; // "Up"
字符串枚举
字符串枚举的概念很简单,但是有细微的 运行时的差别。 在一个字符串枚举里,每个成员都必须用字符串字面量,或另外一个字符串枚举成员进行初始化。
enum Direction {
Up = "UP",
Down = "DOWN",
Left = "LEFT",
Right = "RIGHT",
}
异构枚举(Heterogeneous enums)
enum BooleanLikeHeterogeneousEnum {
No = 0,
Yes = "YES",
}
异构枚举通常不会用