我有一个函数,它接受一个参数,并根据该参数的值返回一个不同类型的值。
例如:
function foo(arg: 'a' | 'b') {
if (arg === 'a') {
return { prop1: 'hello', prop2: 123 };
} else {
return [1, 2, 3];
}
}
我试着对这个函数进行类型检查,但是我不知道该怎么做。具体来说,我想确保如果参数是'a',返回值具有属性prop1和prop2,如果参数是'b',返回值是一个数字数组。
我试过使用条件类型,但我不太确定如何使用它们。有人能帮我吗?
1条答案
按热度按时间v64noz0r1#
可以使用函数重载:
Playground