日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
TypeScript4.4beat版本發(fā)布,你知道了嗎?

本文轉(zhuǎn)載自微信公眾號「天天Up」,作者小弋  。轉(zhuǎn)載本文請聯(lián)系天天Up公眾號。

你好,我是小弋。

前不久TS發(fā)布4.4的beat版本:

發(fā)布說明

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

鏈接:https://github.com/microsoft/TypeScript/issues/44237

里面大致描述4.4版本發(fā)布的流程,預計8月底發(fā)布正式版本。

主要更新內(nèi)容:

  • 提供針對 Aliased Conditions 的控制流分析 (Control Flow Analysis)
  • 增加 symbol 類型和模板字符串模式的索引簽名
  • Catch 語句中默認使用 unknown 類型 (--useUnknownInCatchVariables)
  • 新增 Exact Optional Property 類型 (--exactOptionalPropertyTypes)
  • 針對 tsc --help 的升級和改進
  • 性能改進
  • 添加針對 JavaScript 的拼寫建議
  • 新增實驗性的 Inlay 提示
  • 破壞性變更

比如,我們拿出一個例子來看。

Catch 語句中默認使用 unknown 類型

經(jīng)常寫JavaScript都知道,任何類型的值都可以通過throw拋出后,在catch語句中捕獲到,那么TypeScript中是如何做統(tǒng)一的呢,

其實經(jīng)常寫TS的都知道,很早的版本中,ts會將變量轉(zhuǎn)化為any:

 
 
 
 
  1. try {
  2.     // Who knows what this might throw...
  3.     executeSomeThirdPartyCode();
  4. }
  5. catch (err) { // err: any
  6.     console.error(err.message); // Allowed, because 'any'
  7.     err.thisWillProbablyFail(); // Allowed, because 'any' :(
  8. }

但是,有時候我們知道unknown類型會是更加的選擇,所以我們可以在catch語句的時候使用unknown。

ts團隊為了考慮到效率,還是其他的原因,我們可以通過設置為默認值,也就是說,類似于--useUnknownInCatchVariables將默認類型切換成unknown。

比如下面代碼:

 
 
 
 
  1. // @useUnknownInCatchVariables: true
  2. try {
  3.   // ...
  4. }
  5. catch (e) {
  6.   e.toUpperCase(); // error
  7. }

或者,選擇一個更加廣泛的標志?

這些我們期待正式版本的到來,就能知道答案了。

那么你是不是想來試一試TS4.4測試版本的功能呢,我們可以借助這個TS中的Playground來體驗下:

playground

選擇對應的版本即可。

至于其他的更新以及優(yōu)化,比如更快的構建,會在構建上做優(yōu)化,讓開發(fā)體驗更佳。比如lib.d.ts的修改等等

更多的信息,趕緊去看看吧:

https://github.com/microsoft/TypeScript/issues/44237


網(wǎng)站標題:TypeScript4.4beat版本發(fā)布,你知道了嗎?
文章源于:http://www.dlmjj.cn/article/cohehgj.html