在 TypeScript 中, 关键字具有双重身份,它的作用取决于它所处的上下文: 1. JavaScript 运行上下文(Value Context): 也就是标准的 JS ,用于在运行时判断变量的数据类型(返回 , , 等字符串)。 2. TypeScript 类型上下文(Type Context): 这是 TS 特有的功能。当用在类型定义(如 , , 泛型参数)中时,它的作用是捕获变量或属性的静态类型。 以下详细解释 在 TypeScript 类型上下文 中的核心作用和常见使用场景。 --- 1. 核心作用:从值生成类型 (Type Inference) 最基本的作用是获取一个变量或对象的类型,而不需要手动编写类型定义。这对于保持“单一数据源(Single Source of Truth)”非常有用。 示例:基本变量 示例:对象 (非常常用) 当你有一个配置对象或常量对象,不想专门为它写一个 Interface 时: 好处: 如果你修改了 对象(例如增加了一个字段), 类型会自动更新,无需维护两份代码。 --- 2. 配合 获取对象键的联合类型 这是 最常见的组合技:。用于...