介绍
TypeScript是一种静态类型检查器,它可以识别代码中的错误并提供更好的代码提示。它是JavaScript的超集,可以使代码更加健壮和易于维护。在TypeScript 2.8版本中,引入了一个新的关键字“infer”。这个关键字可以帮助我们从函数返回的类型中推断出参数的类型。
Infer的用法
Infer关键字通常与条件类型一起使用。条件类型是一种新的类型语法,它允许根据类型关系的真实性来选择不同的类型。它的语法是“T extends U ? X : Y”。如果T可以赋值给U,那么这个类型为X,否则为Y。
Infer关键字可以用在条件类型中,用于从函数返回的类型中推断出参数的类型。例如,我们可以使用Infer关键字来推断函数的第一个参数的类型。这个参数是一个函数,它返回一个类型。
1 | type ReturnType<T> = T extends (...args: any[]) => infer R ? R : any; |