1,理解泛型:
泛型:顾名思义,宽泛的类型,就是类型是不固定的,不写死的; 不是任意类型
可以适用于多个类型,使用类型变量(比如T)帮助我们捕获传入的类型,之后我们就可以继续使用这个类型。本质是参数化类型,通俗的讲,就是所操作的数据类型被指定为一个参数,这种参数类型可以用在类、接口和函数的创建中,分别成为泛型类,泛型接口、泛型函数
2,泛型函数:
定义格式:
function 函数名<类型变量1,类型变量2,...>(参数1:类型1,参数2:类型2,...): 返回值类型 {
}
在函数名称的后面写 <>(尖括号),尖括号中添加类型变量
类型变量相当于一个类型容器,能够捕获用户提供的类型(具体是什么类型由用户调用该函数时指定)
示例:
// T 只是一个名字而已,可以改成其他的,例如 R
function fn<T>(value: T): T { return value }
- 类型变量 T