一个函数接收一个参数 param,它是如下类型:
type IObj =
| undefined
| {}
| {
user: {};
}
| {
user: {
name: string;
};
};
现在,这个函数的功能是返回 param.user.name
,如果 param.user.name
不是 string, 直接返回一个默认字符串 'Tom'
。请问在 TypeScript 如何实现这个函数?
你这个 Param 定义的就有问题,除了代码按字数算工钱我想不到为什么要这么写。
正常的应该写为:
这样就表示各个字段是可能为空的了,函数实现则是:
如果非要按你现在这坨类型声明去写的话,那么是: