Назад к задачам
Junior — Senior
24

Корректная типизация функции map в TypeScript

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Задача: написать типы для функции map, которая получает массив элементов одного типа и функцию‑преобразователь, а возвращает новый массив, заполненный элементами другого типа.

Требования:

  • Функция должна принимать два параметра: source — массив элементов типа TSource и converter — функцию, преобразующую элемент TSource в TResult.
  • Возвращаемое значение — массив элементов типа TResult.
  • Типы должны быть обобщёнными, чтобы компилятор корректно выводил типы при вызове функции.

Пример использования (код оставляем без изменений):

const numbers = [1, 2, 3];
const strings = map(numbers, n => n.toString()); // тип strings: string[]