关于泛型变量的疑问
来源:3-21 泛型 - 泛型类+泛型约束

安德鲁的小围巾
2021-01-22
function loggingIdentity<T>(arg: T[]): T[] {
console.log(arg.length);
return arg
}
let output = loggingIdentity([1,2])
“泛型函数 loggingIdentity,接收类型参数 T 和参数 arg,它是个元素类型是 T 的数组,并返回元素类型是T 的数组。 如果我们传入数字数组,将返回一个数字数组,因为此时 T 的的类型为 number。 这可以让我们把泛型变量 T 当做类型的一部分使用,而不是整个类型,增加了灵活性。”
这句话什么意思,为什么传入一个包含数字的数组,T的类型是number?不应该是数组类型吗?
写回答
1回答
-
ustbhuangyi
2021-01-28
这个参数 arg 的类型是 T[],它是一个数组,数组元素的类型是 T,所以当我们传入参数是 [1,2 ],数组的元素类型是 number,所以 T 就是 number 类型
00
相似问题