🎉前言
这是学习 TypeScript
的基础进阶的第二章节,我将会把我学习到的知识总结起来供大家参考。
🍻 TypeScript泛型
🍕 泛型介绍
泛型,顾名思义就是 广泛的 类型,就是我们在定义一个函数、类或者接口时,不固定他的类型,而是在 实例化 的时候才指定类型。
设计泛型的关键目的是在成员之间提供有意义的约束,这些成员可以是:类的实例成员、类的方法、函数参数和函数返回值。
为了更好理解上述的内容,我们举一个例子,让大家理解。
function identity (value) {
return value;
}
console.log(identity(1)) // 1
然后,我们将 identity
函数做适当的调整,以支持 TypeScript
的 number
类型的参数:
function identity (value: number) : number {
return value;
}
console.log(identity(1)) // 1
这里我们将 identity
定义了 number
类型的参数和返回类型,但是一旦固定的具体类型,该函数就不可扩展或通用了,很明显这并不是我们所希望的。但是如果把类型定义为 any
,那就变成跟 j