08 字面量类型

字面量类型 #

字面量类型用于约束变量只能取特定的值,常与联合类型结合使用。

基本概念 #

字面量类型包括字符串字面量、数字字面量、布尔字面量和对象字面量类型。它提供更精确的类型控制。

使用场景 #

  • 定义常量值,如方向、状态。
  • 在联合类型中限制可能的值。
  • 与类型别名结合创建枚举-like 结构。

示例代码 #

type Direction = "up" | "down" | "left" | "right";
let dir: Direction = "up";
// dir = "north"; // 错误

type LiteralObj = { readonly value: 42 };

最佳实践 #

  • 结合联合类型创建伪枚举。
  • 使用 const 断言创建只读字面量类型。
  • 避免过度使用,以保持类型灵活性。