typescript关键词Parameters和ReturnType
warning:
这篇文章距离上次修改已过451天,其中的内容可能已经有所变动。
在TypeScript中,Parameters和ReturnType是两个相关的类型工具,它们用于获取函数的参数类型组成的元组,以及返回值类型。
Parameters
Parameters是一个内置的泛型,它可以用来取得函数的参数类型组成的元组。
例如,假设你有一个函数add,它接受两个数字并返回它们的和:
function add(a: number, b: number): number {
return a + b;
}你可以使用Parameters来获取这个函数的参数类型组成的元组:
type AddParams = Parameters<typeof add>; // [number, number]ReturnType
ReturnType是一个内置的泛型,它可以用来取得函数返回值的类型。
同样,对于上面的add函数,你可以使用ReturnType来获取其返回类型:
type AddReturn = ReturnType<typeof add>; // number使用示例
你可以结合使用Parameters和ReturnType来创建一个泛型,它可以用来创建一个具有相同参数和返回类型的新函数类型:
function double(a: number): number {
return a * 2;
}
type Double = (...args: Parameters<typeof double>) => ReturnType<typeof double>;
const doubleWrapper: Double = (a) => double(a);在这个例子中,Double是一个泛型,它表示一个接受和double函数相同参数并返回相同类型结果的函数。doubleWrapper是一个符合Double类型的函数,它包装了double函数。
评论已关闭