TypeScript 一分钟让你理解 泛型是什么
TS的泛型是指在定义函数、接口或类型时,不预先指定具体的类型,而是在使用时指定类型限制的一种特性。
泛型和函数中的参数比较类似,我们定义一个函数的时候有时会给它留一个参数名,在使用这个函数的时候参入参数的值。
这与泛型不同之处是:函数传入的是值,而泛型传入的是类型。
看下面代码我们应该就能更好的理解
// 函数
function add(a,b){
return a+b ;
}
add(1,2)
// 在函数传参中 把1赋值给a,把2赋值给b 即 a=1,b=2
// 泛型
function add <T>(a:T,b:T) : T {
return a+b;
}
add<Number>(1,2)
//在泛型中,就是把 Number 传给T 就是T=Number 传完之后上面的代码就变成了下面这样
function add <Number>(a:Number,b:Number) : Number {
return a+b;
}