簡體   English   中英

基於參數類型的返回類型

[英]Return type based on parameter type

我的功能是這樣的:

const safeIdCastToNumber = (id: string | null | undefined) => isNil(id) ? id : Number(id)

每當我調用 safeIdCastToNumber 時,我都可以使用類型聯合string | null | undefined string | null | undefined string | null | undefined但也有一些帶有類型聯合string | undefined string | undefined ,因為我涉及一些不可為空的 id。

這個函數的返回類型是number | null | undefined number | null | undefined number | null | undefined

如果我使用的 id 參數的類型不包含null ,我希望返回類型不包含null

例如:如果我使用string | undefined string | undefined返回類型為number | undefined number | undefined ,但如果我使用string | null | undefined string | null | undefined string | null | undefined返回類型為number | null | undefined number | null | undefined

這可能嗎?

將在此處發布帶有重載功能的解決方案。

function safeIdCastToNumber(id: string | undefined): number | undefined
function safeIdCastToNumber(id: string | null | undefined): number | null | undefined
function safeIdCastToNumber(id: string | null | undefined) => isNil(id) ? id : Number(id)

暫無
暫無

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

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