В TypeScript вы можете типизировать параметр функции дженериком с помощью угловых скобок и ключевого слова T
. Дженерики позволяют создавать обобщенные типы данных и функции, которые могут работать с разными типами данных без потери контроля типов.
Для типизации параметра функции дженериком, вы должны указать тип T
в угловых скобках перед именем функции, а затем использовать этот тип в качестве типа параметра функции. Например:
function myFunction<T>(param: T): void { // тело функции }
Здесь T
- это дженерик параметр, который может быть заменен на конкретный тип данных при вызове функции. Вы можете использовать T
внутри тела функции для работы с параметром:
function myFunction<T>(param: T): void { console.log(param); // выводим параметр на консоль }
Теперь, при вызове функции myFunction
, вы можете передать любой тип данных.
myFunction<number>(10); // выводит 10 myFunction<string>('Hello'); // выводит 'Hello'
В этом примере мы указываем тип number
и string
в угловых скобках при вызове функции. TypeScript будет проверять соответствие типов и гарантировать, что аргументы соответствуют указанным типам параметров функции.
Также, в TypeScript существует возможность указывать ограничения на дженерик параметры. Это позволяет ограничить использование только определенных типов. Например, если вы хотите, чтобы дженерик параметр был только числового типа, вы можете использовать extends
:
function myFunction<T extends number>(param: T): void { console.log(param); // выводим параметр на консоль }
Теперь, T
может быть только числом или его подтипом:
myFunction<number>(10); // выводит 10 myFunction<string>('Hello'); // ошибка компиляции
В этом примере, вызов функции с дженериком, указывающим на неправильный тип, будет вызывать ошибку компиляции.
Надеюсь, этот ответ помог вам лучше понять, как типизировать параметры функции дженериками в TypeScript. Если у вас возникли еще вопросы, не стесняйтесь задавать их!