字面量类型 #
字面量类型用于约束变量只能取特定的值,常与联合类型结合使用。
基本概念 #
字面量类型包括字符串字面量、数字字面量、布尔字面量和对象字面量类型。它提供更精确的类型控制。
使用场景 #
- 定义常量值,如方向、状态。
- 在联合类型中限制可能的值。
- 与类型别名结合创建枚举-like 结构。
示例代码 #
type Direction = "up" | "down" | "left" | "right";
let dir: Direction = "up";
// dir = "north"; // 错误
type LiteralObj = { readonly value: 42 };
最佳实践 #
- 结合联合类型创建伪枚举。
- 使用 const 断言创建只读字面量类型。
- 避免过度使用,以保持类型灵活性。