Что такое T в угловых скобках в документации к RxJS?

Как читать такую сигнатуру, никогда не сталкивался:
filter<T>(predicate: (value: T, index: number) => boolean, thisArg?: any): MonoTypeOperatorFunction<T>


Описывается оператор filter. Затем непонятная конструкция <T> первый раз.
Понятно, что filter принимает два аргумента.
Первый – predicate, который есть функция от двух аргументов:
value (типа того же непонятного T
и index который имеет тип Число; возвращает булево значение.

Второй аргумент – thisArg, который необязателен, т.к. знак вопроса ? и может иметь любой тип any

Возвращает этот filter опять непонятное: MonoTypeOperatorFunction – видимо, это функция какая-то непростая, и опять указан её (?) тип <T> что тоже тайна великая есть.

Научите читать букварь?
  • Вопрос задан
  • 260 просмотров
Решения вопроса 2
shai_hulud
@shai_hulud
Это TypeScript. В такой нотации видно, что принимается в аргументах и что будет вернется.

T это generic параметр. В данном контексте это тип фильтруемого значения.

MonoTypeOperatorFunction это функция с сигнатурой (source: T): R которая еще и унарная функция итд. Это всё иерархия типов для того что бы можно было композировать друг с другом функции по их "смыслу" а не сигнатуре.
Ответ написан
@askhat
Это дженерик. Что-то в роде переменной, но для типов.

https://www.typescriptlang.org/docs/handbook/gener...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы