# 定义 WIP
泛型就是指定一个表示类型的变量, 用它来代替某个实际的类型用于编程, 而后再通过实际运行或推导的类型来对其进行替换, 以达到一段使用泛型程序可以实际适应不同类型的目的。「泛型就是不预先确定的数据类型, 具体的类型在使用的时候再确定的一种类型约束规范」。
泛型的好处:
- 函数和类可以轻松的支持多种类型, 增强程序的扩展性
- 不必写多条函数重载, 冗长的联合类型声明, 增强代码的可读性
- 灵活控制类型之间的约束
# 泛型约束
有时候我们希望限制每个类型变量接受的类型数量, 这就是泛型约束。
我们可以使用 ,
号来分隔多种约束类型, 比如: <T extends Length, Type2, Type3>
。
# 常见的一些泛型变量含义
T (Type): 表示一个
TypeScript
类型K (Key): 表示对象中的键类型
V (Value): 表示对象中的值类型
E (Element): 表示元素类型
# 使用
function validator<T>(arg: T): T {
return arg;
}
1
2
3
2
3
# 快来耍耍啊
# 🌰🌰
// template
1
# 游乐场
# 参考答案
// answer
1
# 参考资料
handbook - generics (opens new window)
TypeScript Spec (opens new window)
← Typescript 接口 as →