Skip to main content
· 4 min read

TS 5.0+ 起 enum 已经从"首选"变成"备选"——能 as const 对象就别 enum。

  • 三种 enum 类型:数字(自动递增 + 反向映射)、字符串、异构(不推荐)
  • 数字 enum 的坑:编译后是 JS 对象,无法 tree-shake,反向映射易踩坑
  • 字符串 enum:tree-shake 友好,但运行时仍有开销
  • const enum:跟 isolatedModules 冲突,TS 5.0 起不再推荐
  • 首选替代:as const 对象 + 联合类型,零运行时开销
发文趋势
近 12 个月 · 共 177 篇
10111212345678139