TypeScript 泛型中的 K、T 和 V 是什么?

9,219次阅读
没有评论

共计 556 个字符,预计需要花费 2 分钟才能阅读完成。

如花的旋律
2024-01-31 14:07:55
浏览数 (1309)

在 TypeScript 中,泛型是一种强大的工具,它使我们能够编写更灵活和可重用的代码。泛型允许我们在定义函数、类或接口时使用类型参数来表示未知的类型。在泛型中,常见的类型参数命名约定包括 T、K 和 V。

当你第一次看到 TypeScript 泛型中的​ T ​时,是不是觉得很奇怪?

1_XjuH8GykvoOL77Q1mtQazQ

图中的​ T ​称为泛型类型参数,它是我们希望传递给恒等函数的类型占位符。

就像传递参数一样,我们获取用户指定的实际类型,并将其链接到参数类型和返回值类型。

1_58mhLNgQAejgD8p_S0UjNw

1_SYbldGfuNQhNmE4-Lv4bdQ

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

  • K(Key): 表示对象中 key 的类型
  • V(Value):表示对象中值的类型
  • E(Element): 表示元素类型

1_WVWRHxEfT2j6XKZddiIhSw

当然,您不必只定义一个类型参数,您可以引入任意数量的类型参数。这里我们引入了一个新的类型参数 U,它扩展了我们定义的恒等函数。

1_oq5VVDHQtYuELwcV0wRjLA

1_tMSUrnvbQogNRk3rRk0bog

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

1_A_X4xCcHUe6ythaN_UNwsQ

1_qimef85ZW32BQ6nJbIor9g

看完上面的动画,你是否已经了解泛型类型参数了呢?

原文地址: TypeScript 泛型中的 K、T 和 V 是什么?

    正文完
     0
    Yojack
    版权声明:本篇文章由 Yojack 于2024-09-19发表,共计556字。
    转载说明:
    1 本网站名称:优杰开发笔记
    2 本站永久网址:https://yojack.cn
    3 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
    4 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
    5 本站所有内容均可转载及分享, 但请注明出处
    6 我们始终尊重原创作者的版权,所有文章在发布时,均尽可能注明出处与作者。
    7 站长邮箱:laylwenl@gmail.com
    评论(没有评论)