<this>在TypeScript泛型中是什么意思?

埃里克·利普兰迪(Eric Liprandi)

我们express在应用程序中使用TypeScript。我遇到了他们的类型定义,想知道以下是什么意思:

export interface IRouter extends RequestHandler {
    all: IRouterMatcher<this>;
}

在此处输入图片说明

特别是IRouterMatcher<this>

我读了几次文档,找不到任何提及此用例的内容。而且,<this>由于通常会去除尖括号,因此很难在SO或Web中进行搜索

斯拉蒂丹

this 指当前可用的类型。

这也可能是覆盖的类或接口的子类型。

也见多态这个类型https://www.typescriptlang.org/docs/handbook/advanced-types.html

例:

class Calculator {
    a: number;
    add(): this {
        a++;
        return this;
    } 
}

class AdvancedCalculator {
    substract(): this {
         a--;
         return this;
    } 
}

new AdvancedCalculator()
   .add() // returns AdvancedCalculator as "this" 
   .substact() // it compiles! 

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

List <?>在Java泛型中是什么意思?

在Java泛型中,List <是什么?super String>是什么意思?

什么是-?在TypeScript中是什么意思?

`extends boolean = false` 的泛型类型是什么意思?

方法前的泛型是什么意思?

泛型中的“递归类型绑定”是什么意思?

这个杂散T在这个JAVA泛型中是什么意思?

`&'a mut` 在泛型参数空间之外的 impl 定义中是什么意思?

创建Java泛型类时,尖括号中的波浪号是什么意思?

Java泛型的类型参数中的问号是什么意思?

{} 在 TypeScript 中是什么意思?

TypeScript中的“环境”是什么意思

在Typescript中,<T>是什么意思?

Typescript中的static是什么意思?

“ ...” []在Typescript中是什么意思?

Typescript中的泛型是什么?

Java 泛型:<T> T[] toArray(T[] a) 中的第一个“T”是什么意思?

Java的泛型数组:为什么这个编译和这是什么意思?

Typescript中的typeof Array [number]是什么意思?

#符号在TypeScript类中是什么意思?

在 TypeScript 中,“extends keyof”和“in keyof”是什么意思?

TypeScript中的双精度类型声明是什么意思?

在Typescript类型定义中,前缀“&”是什么意思?

在TypeScript中为“导出”分配值是什么意思?

Angular / Typescript中的导出*(星号)是什么意思

在TypeScript类型定义中,“&”号是什么意思?

方括号(例如SomeType [])在TypeScript中是什么意思?

Angular / Typescript中的<var>语法是什么意思?

在TypeScript中,导入或导出为“顶级”是什么意思?