Ts——项目实战应用enum枚举
在TypeScript中,我们可以使用enum
关键字来定义一些有名字的常量。当我们有一些特定的值,比如一年的四季或者一周的天数,我们可以使用enum
来定义这些值,这样可以使我们的代码更具可读性和可维护性。
以下是一些使用enum
的示例:
- 基本的
enum
使用:
enum Color {
Red,
Green,
Blue
}
let colorName: string = Color[2];
console.log(colorName); // 输出 'Blue'
在这个例子中,我们定义了一个名为Color
的枚举,它有三个成员:Red
,Green
和Blue
。我们可以通过其索引(从0开始的数字)来访问这些成员的名字。
- 带有初始值的
enum
:
enum Color {
Red = 1,
Green = 2,
Blue = 4
}
let colorValue: number = Color.Green;
console.log(colorValue); // 输出 2
在这个例子中,我们给每个成员赋予了一个初始值。
- 字符串
enum
:
enum Color {
Red = 'FF0000',
Green = '00FF00',
Blue = '0000FF'
}
let colorValue: string = Color.Green;
console.log(colorValue); // 输出 '00FF00'
在这个例子中,我们给每个成员赋予了一个字符串值。
- 带有混合类型的
enum
:
enum Enum {
A,
B,
C = "C",
D = "D",
E = 3,
F = 4,
G
}
let value: Enum = Enum.G;
console.log(value); // 输出 7
在这个例子中,我们混合使用了自增和赋值初始化,并且包含了不同类型的值。
- 使用
enum
进行数据校验:
enum StatusCode {
OK = 200,
NOT_FOUND = 404,
INTERNAL_SERVER_ERROR = 500
}
function handleStatusCode(code: number) {
switch (code) {
case StatusCode.OK:
console.log('请求成功');
break;
case StatusCode.NOT_FOUND:
console.log('请求的资源不存在');
break;
case StatusCode.INTERNAL_SERVER_ERROR:
console.log('服务器内部错误');
break;
default:
console.log('未知状态码');
break;
}
}
handleStatusCode(StatusCode.NOT_FOUND); // 输出 '请求的资源不存在'
在这个例子中,我们定义了一个StatusCode
的枚举,然后在一个函数中使用switch
语句来处理不同的状态码。这样可以确保我们的代码更加清晰和健壮。
以上就是一些使用enum
的常见场景和示例代码。
评论已关闭