TypeScript 基础指南:Enums

枚举是一种特殊类型,它表示一组有限且固定的值。枚举值通常用作常量,以提高代码的可读性和可维护性。

创建枚举

要创建枚举,可以使用 enum 关键字,后跟枚举的名称和大括号,其中包含枚举值:

enum Colors {
  Red,
  Green,
  Blue
}

在此示例中,Colors 是一个枚举,它包含三个值:Red、Green 和 Blue。

使用枚举值

枚举值可以通过枚举名称和点号语法来访问:

let myColor: Colors = Colors.Red;

在此示例中,myColor 变量被分配了 Colors.Red 值。

枚举值索引

枚举值在 TypeScript 中从 0 开始自动分配索引。但是,也可以显式地为枚举值指定索引:

enum Colors {
  Red = 1,
  Green = 2,
  Blue = 3
}

在此示例中,Red 枚举值被显式地分配了索引 1,Green 枚举值被分配了索引 2,依此类推。

使用场景
表示一组有限且固定的值,例如颜色、状态或角色。
提高代码的可读性和可维护性,因为枚举值比数字或字符串常量更具描述性。
防止使用无效值,因为枚举只允许使用定义的值。
优点
可读性
枚举值比数字或字符串常量更具描述性,这使得代码更容易阅读和理解。
可维护性
枚举可以帮助防止使用无效值,从而提高代码的可维护性。
类型安全
TypeScript 可以检查枚举值的使用,以确保只使用有效的枚举值。
缺点
有限性
枚举只能表示有限且固定的值。
可扩展性
枚举的值不能在运行时动态添加或删除。
注意:
枚举值是常量,这意味着它们一旦创建就不能被修改。
枚举可以包含其他成员,例如方法和属性。
TypeScript 支持两种类型的枚举:数字枚举和字符串枚举。数字枚举的值是数字,而字符串枚举的值是字符串。