首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

根据typescript中的参数值有条件地键入函数

是指根据函数参数的不同值来决定函数返回值的类型。这种特性称为条件类型,它是在typescript 2.8版本中引入的。

在typescript中,可以使用条件类型来根据参数的类型来确定函数返回值的类型。通过使用泛型和条件类型的组合,可以实现根据不同的参数值进行类型检查。

下面是一个示例:

代码语言:txt
复制
type ReturnType<T> = T extends (...args: any[]) => infer R ? R : never;

function getValue<T>(arg: T): ReturnType<T> {
  return arg();
}

function numberFunc(): number {
  return 10;
}

function stringFunc(): string {
  return 'hello';
}

const numberResult: number = getValue(numberFunc); // 正确的类型推断,numberResult的类型为number
const stringResult: string = getValue(stringFunc); // 正确的类型推断,stringResult的类型为string

在上面的示例中,我们定义了一个ReturnType类型,它接受一个函数类型T作为参数,并根据函数的返回值类型来确定返回的类型。然后,我们定义了一个getValue函数,它接受一个参数arg,并使用ReturnType类型来确定函数的返回类型。

通过使用泛型和条件类型,我们可以实现根据函数参数的值有条件地确定函数返回值的类型。

推荐的腾讯云相关产品:无相关产品推荐。

参考链接:无腾讯云相关产品介绍链接地址。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的合辑

领券