Skip to content

TypeScript 高频题清单与追问树

高频题清单

1. 泛型:参数化类型、约束与类型推导链路

  • 题型:对比型
  • 考察点:泛型的价值不是“写个 T”,而是把类型关系延迟到使用点再具体化
  • 易混点:题型没分清时,很容易把 类型表达、缩窄推导、工程约束 混成一个层级。
  • 串讲顺序:先回答核心问题,再补边界、代价和项目映射。

2. interface 与 type:开放扩展、组合表达与工具类型兼容

  • 题型:对比型
  • 考察点:两者都能描述对象结构,但设计意图、扩展方式和表达能力并不完全重合
  • 易混点:题型没分清时,很容易把 类型表达、缩窄推导、工程约束 混成一个层级。
  • 串讲顺序:先回答核心问题,再补边界、代价和项目映射。

3. TypeScript 工程实践:strict、边界校验与类型债务控制

  • 题型:对比型
  • 考察点:TS 价值能否落地,取决于工程边界是否把类型信息真正接住
  • 易混点:题型没分清时,很容易把 类型表达、缩窄推导、工程约束 混成一个层级。
  • 串讲顺序:先回答核心问题,再补边界、代价和项目映射。

4. 值空间与类型空间:同名标识符为什么有时能共存

  • 题型:对比型
  • 考察点:TypeScript 同时维护值空间和类型空间,很多 import、enum、class 问题都来自两者混淆
  • 易混点:题型没分清时,很容易把 类型表达、缩窄推导、工程约束 混成一个层级。
  • 串讲顺序:先回答核心问题,再补边界、代价和项目映射。

5. 类型守卫:控制流分析如何把宽类型缩窄

  • 题型:对比型
  • 考察点:TypeScript 的缩窄依赖控制流分析,而不是运行时真的改变了值的类型
  • 易混点:题型没分清时,很容易把 类型表达、缩窄推导、工程约束 混成一个层级。
  • 串讲顺序:先回答核心问题,再补边界、代价和项目映射。

6. unknown、any 与 never:顶层类型和底层类型的分工

  • 题型:对比型
  • 考察点:这三个类型分别代表放弃检查、延迟确认和不可能到达,含义完全不同
  • 易混点:题型没分清时,很容易把 类型表达、缩窄推导、工程约束 混成一个层级。
  • 串讲顺序:先回答核心问题,再补边界、代价和项目映射。

每题考察点

  • TypeScript 模块的高频题,通常不是单点记忆,而是在看你能否把 类型表达、缩窄推导、工程约束 连起来讲
  • 同一题连续被深挖时,往往是在验证你是不是只会背第一层结论
  • 真正稳定的回答,必须包含边界、代价和实际落地

易混点与串讲顺序

  • 先分题型,再定讲法,不要所有题都用同一套口径
  • 对比型题先拆对象,机制型题先讲参与者和流程,治理型题先讲症状和闭环
  • 一开口就急着给结论,通常说明上下文还没搭起来

模拟追问树

  • 第一层通常会追到 类型表达
  • 第二层会继续追到 缩窄推导 的内部细节
  • 第三层往往回到 工程约束、项目经验和权衡依据

使用建议

  • 优先挑 3 到 5 个最高频问题练成稳定串讲,再逐步扩充
  • 复习时把同题型问题放在一起,会比按目录顺序硬刷更有效
  • 项目面准备时,先看本页,再回到对应单篇文档准备项目映射

相关主题