TypeScript 5.x 更新


TypeScript 由 Microsoft 积极维护和更新。在 5.x 版本中,进行了大量实用性和生活质量更新。

本章涵盖了最流行的更新,以实现更严格、更灵活的类型安全。


提醒一下,这些功能仅在 5.x+ 中可用

模板文字类型

Template Literal Types现在允许我们使用模板文字创建更精确的类型。我们可以定义依赖于编译时字符串的实际值的自定义类型。

示例

type Color = "red" | "green" | "blue";
type HexColor = `#${string}`;

// Usage:
let myColor: HexColor<"blue"> = "#0000FF";
亲自试一试 »

索引签名标签

Index Signature Labels允许我们使用计算属性名称来标记索引签名。它有助于在处理动态对象时提供更具描述性的类型信息。

示例

type DynamicObject = { [key: string as `dynamic_${string}`]: string };

// Usage:
let obj: DynamicObject = { dynamic_key: "value" };
亲自试一试 »


5.x 现在还支持原生 JavaScript 私有字段。 TypeScript“私有”仍然有效,如中讨论的那样课程部分。