举例子说明TypeScript的Enum枚举类型?
参考答案:
TypeScript中的enum
类型用于创建一组命名的数字常量。默认情况下,从0开始为每个枚举成员分配一个值,但你也可以手动指定它们的值。
下面是一个简单的例子,展示了如何在TypeScript中使用enum
类型:
// 定义一个Direction枚举类型
enum Direction {
Up, // 默认值为0
Down, // 默认值为1
Left, // 默认值为2
Right // 默认值为3
}
// 使用枚举类型
let myDirection: Direction = Direction.Up;
// 你可以通过枚举名称和成员名称来访问枚举值
console.log(Direction.Up); // 输出: 0
console.log(Direction[0]); // 输出: "Up"
// 你也可以手动指定枚举成员的值
enum Color {
Red = 1,
Green = 2,
Blue = 4,
Yellow = 8
}
let myColor: Color = Color.Green;
console.log(myColor); // 输出: 2
在这个例子中,我们创建了两个枚举类型:Direction
和Color
。Direction
枚举的每个成员都被赋予了默认的值(从0开始),而Color
枚举的每个成员都被赋予了手动指定的值。
需要注意的是,虽然枚举成员在类型上是有区别的,但它们的值在运行时仍然是数字。这意味着你可以将枚举成员与数字进行比较,或者将数字赋值给枚举变量。
例如:
let directionValue: number = Direction.Up;
if (directionValue === 0) {
console.log("Direction is Up");
}
directionValue = 1;
if (directionValue === Direction.Down) {
console.log("Direction is Down");
}
在这个例子中,我们将Direction.Up
的值(0)赋给了directionValue
变量,然后将其与数字0进行比较。同样,我们也将数字1赋给了directionValue
变量,然后将其与Direction.Down
进行比较。