簡體   English   中英

TypeScript 在函數語句中推斷 void 而不是 never

[英]TypeScript infers void instead of never on function statement

TypeScript infers () => never for foo如果它是不返回的函數表達式的結果:

const foo = function () {
  throw new Error();
}

但是如果foo是一個函數語句則為void

function foo() {
  throw new Error();
}

我不明白。 有一個解釋會很棒。

文檔中找到解釋。

“永遠不會是總是拋出異常或永不返回的函數表達式或箭頭函數表達式的返回類型”

如果分配引發錯誤,則永遠不會分配 const foo。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM