likes
comments
collection
share

【动画演示】TypeScript 泛型中的 K、T、V 等到底是个啥?

作者站长头像
站长
· 阅读数 14

不想看文字,那就直接来看视频吧www.bilibili.com/video/BV1sY…

当你首次看到 TypeScript 泛型中的 T 会感到陌生么?

【动画演示】TypeScript 泛型中的 K、T、V 等到底是个啥?

图中的 T 被称为泛型变量,它是我们希望传递给 identity 函数的类型占位符

就像传递参数一样,我们把用户指定的实际类型,链式传递给参数类型和返回值类型。

【动画演示】TypeScript 泛型中的 K、T、V 等到底是个啥?

那么 T 是什么意思呢?图中的泛型变量 T 表示 Type,实际上 T 可以用任何有效的名称代替。除了 T 之外,常见的泛型变量还有 K、V 和 E 等。

  • K 全称 Key 表示对象中键的类型;
  • V 全称 Value 表示对象中值的类型;
  • E 全称 Element 表示元素类型。

【动画演示】TypeScript 泛型中的 K、T、V 等到底是个啥?

当然你并不是只能定义一个类型变量,你可以引入任何数量的类型变量。这里我们引入一个新的类型变量 U,用于扩展我们定义的 identity 函数。

【动画演示】TypeScript 泛型中的 K、T、V 等到底是个啥?

在调用 identity 函数时,我们可以显式指定泛型变量的实际类型。 当然你也可以不指定泛型变量的类型,让 TypeScript 自动帮我们完成类型推断。

【动画演示】TypeScript 泛型中的 K、T、V 等到底是个啥?

看完以上动画,你是不是已经理解泛型变量了?如果看懂的话,欢迎在评论区留言。看完觉得意犹未尽,那你可以继续阅读阿宝哥之前写的 你不知道的 TypeScript 泛型 这篇文章。

最后你喜欢以这种形式学 TS 么?喜欢的话,记得点赞与收藏哟。

转载自:https://juejin.cn/post/7084410879223005215
评论
请登录