TypeScript 泛型:深入理解与应用
1. 泛型基础
泛型是一种强大的工具,它能以比具体类型更通用的方式描述函数的功能。可以将泛型视为一种约束,就像将函数参数注释为 n: number 会将参数 n 的值约束为 number 类型一样,使用泛型 T 会将绑定到 T 的任何类型约束为在 T 出现的所有地方都是相同的类型。
以 filter 函数为例,TypeScript 会根据以下步骤推断类型:
1. 从 filter 的类型签名中,TypeScript 知道 array 是某种类型 T 的元素数组。
2. 当传入数组 [1, 2, 3] 时,TypeScript 推断 T 为 number 类型。
3. TypeScript 会将所有 T 替换为 number 类型。例如,参数 f: (item: T) => boolean 变为 f: (item: number) => boolean ,返回类型 T[] 变为 number[] 。
4. TypeScript 会检查所有类型是否满
超级会员免费看
订阅专栏 解锁全文
1231

被折叠的 条评论
为什么被折叠?



