断言函数与判别联合如何共同保证业务分支的穷尽检查
简答题中等896 次浏览
参考答案与解析
核心结论:类型谓词负责告诉编译器某个布尔判断成立后变量具有什么类型,断言函数则表示函数正常返回后某个条件必然成立。它们都只是控制流分析的契约,真实性由实现者承担。处理业务状态时,应优先使用带稳定判别字段的联合,让编译器自动缩小;对外部数据先做运行时校验;在分支末尾利用 never 做穷尽检查,从而使新增状态能够触发编译错误。
底层机制上,TypeScript 会根据 typeof、instanceof、in、相等比较、真假判断以及自定义类型谓词更新控制流图中的变量类型。若联合成员都有同一个字面量字段,例如 status 分别为 idle、loading、success 与 failure,检
