TS namespace enum
时间: 2024-09-09 14:15:23 浏览: 57
在TypeScript (TS) 中,`namespace` 和 `enum` 是两个不同的关键字,用于组织代码结构和常量定义。
**Namespace**: 它是用来创建命名空间(也称为命名空间模块),以便更好地管理和分组相关的类、接口和其他声明。当你想要避免全局变量污染并且保持代码组织时,可以使用namespace。例如:
```typescript
// 创建一个名为Person的命名空间
namespace Person {
export class PersonClass {
name: string; // 属性
}
}
// 在外部可以通过这个命名空间来访问PersonClass
let person: Person.PersonClass = new Person.PersonClass();
person.name = "John Doe"; // 外部调用属性
```
这里,`Person` 命名空间包含了 `PersonClass` 类,你可以通过 `Person` 来访问这个类的对象。
**Enum**: 在TypeScript中,`enum` 用于定义一组具有名称的常量。这些常量通常用于表示一组预定义的值。例如:
```typescript
// 创建一个枚举,定义一周中的日子
enum DaysOfWeek {
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
}
// 外部可以直接使用枚举值
console.log(DaysOfWeek.Monday); // 输出:DaysOfWeek.Monday
```
在这个例子中,`DaysOfWeek` 是一个枚举,它有七个预定义的成员。
阅读全文