如何深入理解并灵活运用TypeScript中的泛型?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1028个文字,预计阅读时间需要5分钟。
目录 + 1 + 什么是泛型 + 2 + 泛型方法 + 3 + 泛型类 + 4 + 泛型接口 + 1 + 什么是泛型 + 泛型的本质是参数化类型,既可以是参数化类类型,也可以是参数化方法类型。这种参数化类型可以用于在类、接口和方法的创建时指定所操作的数据类型。
目录
- 1 什么是泛型
- 2 泛型方法
- 3 泛型类
- 4 泛型接口
1 什么是泛型
泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。
泛型使用<T>来定义类型,<T>中的T可以是U也可以是其他合法的字母,建议大写。泛型可以理解为不确定单独类型,函数中使用泛型,可以约束函数的参数和返回值类型相同。
2 泛型方法
当定义identity函数时,这个函数会返回任何传入它的值,不用泛型的话,这个函数可能是下面这样:
function identity(arg: number): number { return arg; }
但是这样的话,参数和返回值规定了必须为number类型。
本文共计1028个文字,预计阅读时间需要5分钟。
目录 + 1 + 什么是泛型 + 2 + 泛型方法 + 3 + 泛型类 + 4 + 泛型接口 + 1 + 什么是泛型 + 泛型的本质是参数化类型,既可以是参数化类类型,也可以是参数化方法类型。这种参数化类型可以用于在类、接口和方法的创建时指定所操作的数据类型。
目录
- 1 什么是泛型
- 2 泛型方法
- 3 泛型类
- 4 泛型接口
1 什么是泛型
泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。
泛型使用<T>来定义类型,<T>中的T可以是U也可以是其他合法的字母,建议大写。泛型可以理解为不确定单独类型,函数中使用泛型,可以约束函数的参数和返回值类型相同。
2 泛型方法
当定义identity函数时,这个函数会返回任何传入它的值,不用泛型的话,这个函数可能是下面这样:
function identity(arg: number): number { return arg; }
但是这样的话,参数和返回值规定了必须为number类型。

