TypeScript 4.4 beat版本发布

AI 概述
前不久 TS 发布 4.4 的 beat 版本: 到底 4.4 的版本中有哪些 features,我们可以参考下面的: 链接:点击这里 里面大致描述 4.4 版本发布的流程,预计 8 月底发布正式版本。 主要更新内容: 提供针对 Aliased Conditions 的控制流分析 (Control Flow Analysis) 增加 symbol 类型和模板字符串模式的索引签名 Catch 语句...

前不久 TS 发布 4.4 的 beat 版本:

TypeScript 4.4 beat 版本发布

到底 4.4 的版本中有哪些 features,我们可以参考下面的:

链接:点击这里

TypeScript 4.4 beat 版本发布

里面大致描述 4.4 版本发布的流程,预计 8 月底发布正式版本。

主要更新内容:

  • 提供针对 Aliased Conditions 的控制流分析 (Control Flow Analysis)
  • 增加 symbol 类型和模板字符串模式的索引签名
  • Catch 语句中默认使用 unknown 类型 (--useUnknownInCatchVariables)
  • 新增 Exact Optional Property 类型 (--exactOptionalPropertyTypes)
  • 针对 tsc --help 的升级和改进
  • 性能改进
  • 添加针对 JavaScript 的拼写建议
  • 新增实验性的 Inlay 提示
  • 破坏性变更

比如,我们拿出一个例子来看。

Catch 语句中默认使用 unknown 类型

经常写 JavaScript 都知道,任何类型的值都可以通过throw抛出后,在catch语句中捕获到,那么 TypeScript 中是如何做统一的呢,

其实经常写 TS 的都知道,很早的版本中,ts 会将变量转化为 any:

try {
    // Who knows what this might throw...
    executeSomeThirdPartyCode();
}
catch (err) { // err: any
    console.error(err.message); // Allowed, because 'any'
    err.thisWillProbablyFail(); // Allowed, because 'any' :(
}

但是,有时候我们知道unknown类型会是更加的选择,所以我们可以在catch语句的时候使用unknown

ts 团队为了考虑到效率,还是其他的原因,我们可以通过设置为默认值,也就是说,类似于--useUnknownInCatchVariables将默认类型切换成unknown

比如下面代码:

// @useUnknownInCatchVariables: true

try {
  // ...
}
catch (e) {
  e.toUpperCase(); // error
}

或者,选择一个更加广泛的标志?

这些我们期待正式版本的到来,就能知道答案了。

那么你是不是想来试一试 TS4.4 测试版本的功能呢,我们可以借助这个 TS 中的 Playground 来体验下:

playground

选择对应的版本即可。

至于其他的更新以及优化,比如更快的构建,会在构建上做优化,让开发体验更佳。比如 lib.d.ts 的修改等等。

以上关于TypeScript 4.4 beat版本发布的文章就介绍到这了,更多相关内容请搜索码云笔记以前的文章或继续浏览下面的相关文章,希望大家以后多多支持码云笔记。

「点点赞赏,手留余香」

0

给作者打赏,鼓励TA抓紧创作!

微信微信 支付宝支付宝

还没有人赞赏,快来当第一个赞赏的人吧!

声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 admin@mybj123.com 进行投诉反馈,一经查实,立即处理!
重要:如软件存在付费、会员、充值等,均属软件开发者或所属公司行为,与本站无关,网友需自行判断
码云笔记 » TypeScript 4.4 beat版本发布

发表回复