為什么當函式回傳null或undefined函式的回傳型別為number.
//gives error
//Error : A function whose declared type is neither 'void' nor 'any' must return a value.ts(2355)
function add1(a: number, b: number): number {}
// no error
function add2(a: number, b: number): number {
return undefined;
}
// no error
function add3(a: number, b: number): number {
return null;
}
uj5u.com熱心網友回復:
當型別檢查編譯器選項strictNullChecks為off. 啟用該選項將導致 Typescript 顯示函式add2和add3.
您可以閱讀更多相關資訊:strictnullchecks-off和strictnullchecks-on
uj5u.com熱心網友回復:
在 tsconfig.json 檔案的“compilerOptions”下添加“strict”:true。
uj5u.com熱心網友回復:
正如上面提到的@SM,它是由strict標志引起的,確實是由strictNullChecks標志引起的。
當我設定
"strict": true,
或者
"strictNullChecks": true,
TSC 給出了我期望的錯誤
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/401152.html
上一篇:除錯函式-意外的符號和缺少的引數
下一篇:R中選擇函式的總和
