泛型可以理解为宽泛的类型,通常用于类和函数 ,参数和返回值类型不确定的情况。增加代码的灵活性和复用性。
功能:若一个函数是比较通用的函数,如下面的函数,如果想让他处理一组字符串、布尔类型、数值类型,则可以使用泛型。
TypeScript
function myFn(a:number, b:numer):number[]{
return [a, b]
}
想用该函数myFn传其他类型的值,但是这里限定了Number,为了避免number|string这种交叉使用,所以用泛型。
对函数定义泛型,即在函数名后、参数前写一个T,为泛型变量(T也可以为其他字母)
TypeScript
function myFn<T>(a:T, b:T):T[]{
return [a, b]
}
myFn<number>(1,3)
myFn('a','b')//ts支持类型推断