Microsoft 宣布推出 TypeScript 5.4 Beta,引入 NoInfer 类型实用程序,以及 TypeScript 5.0 弃用后即将发生的变化

以下是 TypeScript 5.4 Beta 的概述。 新功能包括:在最后一次赋值之后保留闭包中的收缩、NoInfer 实用程序类型、支持 –moduleResolution 捆绑器中的 require() 调用和 –module keep 等等。 在弃用 TypeScript 5.0 后,微软还宣布 5.5 版本将进行更改。 最终分配后保持闭包收缩 TypeScript 通常可以根据您可以执行的检查确定变量的更具体类型。 这个过程称为收缩。 123456 function uppercaseStrings(x: string | number) { if (typeof x === “string”) { // TypeScript 知道这里的 ‘x’ 是一个 ‘string’。 返回 x.toUpperCase(); 一个常见的问题是这些受限类型并不总是保留在函数闭包中。 1234567891011121314 函数 getUrls(url: 字符串 | URL, 名称: 字符串[]) { […]