TypeScript 的类型推断 (Type Inference) 是指 TypeScript 编译器在没有明确指定类型注解(Type Annotation)的情况下,能够自动推导出变量、函数返回值或表达式类型的能力。 简单来说:你不需要每行代码都写类型,TypeScript 会尝试通过你的代码逻辑“猜”出类型。 这使得代码更简洁,同时保留了类型检查的安全性。以下是类型推断的几个核心场景和机制: --- 1. 基础推断 (Basic Inference) 这是最常见的形式,通常发生在变量初始化或设置默认参数时。 变量初始化 当你声明变量并同时赋值时,TS 会根据右边的值推断左边的类型。 函数默认参数 函数返回值 TS 会根据函数体内的 语句推断返回类型。 --- 2. 最佳通用类型 (Best Common Type) 当一个数组或集合中包含多种类型时,TypeScript 会尝试找到一个能兼容所有元素的“最佳通用类型”。 如果找不到兼容所有类型的父类型,TS 可能会推断为联合类型,或者在旧版本中推断为 (但在现代 TS 中通常是联合类型)。 --- 3. 上下文类型 (Cont...