枚举与联合类型
typescript · beginner · 15 min · Step 1/2枚举 vs 联合类型
Enum
enum Direction { Up, Down, Left, Right }
enum Color { Red = '#f00', Green = '#0f0', Blue = '#00f' }
const dir: Direction = Direction.Up; // 0
const c: Color = Color.Red; // '#f00'
联合类型(推荐)
type Direction = 'up' | 'down' | 'left' | 'right';
type Status = 'idle' | 'loading' | 'success' | 'error';
const dir: Direction = 'up';
const status: Status = 'loading';
现代 TS 更推荐字符串联合类型而非 enum,因为更轻量且 tree-shaking 友好。