我对TypeScript's Generics
有一些疑问。
文档说我们实际上正在丢失函数返回时该类型的信息,但是如何呢?它使用以下代码:
function identity(arg: any): any {
return arg;
}
generic
我可以使用any
做什么?
答案 0 :(得分:2)
文档说我们实际上正在丢失函数返回时该类型的信息,但是如何呢?
此函数会丢失有关参数的信息:
function identity(arg: any): any {
return arg;
}
const foo = identity(123); // typeof foo == `any`
以下函数(使用泛型)constrains函数的返回类型匹配输入类型。这将参数的类型保持(并流动)到返回类型:
function identity<T>(arg: T): T {
return arg;
}
const foo = identity(123); // typeof foo == `number`