【问题标题】:Typescript generics syntax: what does <Type> achieve?Typescript 泛型语法:<Type> 实现了什么?
【发布时间】:2021-09-25 11:46:57
【问题描述】:

阅读关于泛型的打字稿手册:https://www.typescriptlang.org/docs/handbook/2/generics.html

我对以下示例的语法感到困惑:

function loggingIdentity<Type>(arg: Type[]): Type[] {
  console.log(arg.length);
  return arg;
}

我明白:

  1. arg: Type[] 指定输入参数。
  2. Type[] 之前的 { ... } 指定返回类型

然而,

  1. &lt;Type&gt;loggingIdentity&lt;Type&gt; 中的用途是什么?

它实现了什么?

【问题讨论】:

标签: typescript generics


【解决方案1】:

&lt;Type&gt; 部分使它成为通用的:它定义了一个类型的变量(您可以命名任何您想要的名称,尽管TType 很常见)。这是任何类型的占位符。

所以您可以调用loggingIdentity(arg),其中arg 的类型为numberstring 或您想要的任何复杂类型。 &lt;Type&gt; 的声明是允许的; Type 在参数中的用法和返回类型是您声明该方法将返回与传入的值相同类型的值。

【讨论】:

    猜你喜欢
    • 2019-12-17
    • 2020-06-11
    • 2015-11-25
    • 1970-01-01
    • 1970-01-01
    • 2014-08-19
    • 1970-01-01
    • 2020-08-03
    相关资源
    最近更新 更多