TypeScript中返回类型的可空类型是否存在简写方式?
关于TypeScript返回类型可选简写的问题
在TypeScript里,返回类型确实没有type?这种简写语法,目前除了用type | undefined之外,没有其他官方的语法级简写方式。
你示例里的: string?写法是不合法的——TypeScript仅允许在函数参数定义时用?:表示可选(隐含参数可能为undefined),返回类型必须显式通过| undefined来声明可能返回undefined的情况。
修正后的合法代码如下:
function veryUsefulFunction(val?: string /* 这里写法没问题 */): string | undefined { return val?.toLowerCase(); }
如果觉得| undefined重复书写麻烦,你可以自定义一个通用类型别名来封装,不过这本质是语法封装而非原生简写:
type Optional<T> = T | undefined; function veryUsefulFunction(val?: string): Optional<string> { return val?.toLowerCase(); }
内容的提问来源于stack exchange,提问作者Phuo
相关产品推荐
相关产品推荐

