Menu
CoddyTech

Типизация стрелочных функций

Часть раздела Введение в TypeScript путешествия по JavaScript на Coddy. Урок 23 из 73.

Для стрелочных функций вы добавляете аннотации типов к параметрам внутри круглых скобок, точно так же, как и в обычных функциях. Аннотация типа возвращаемого значения ставится после списка параметров, но перед стрелкой (=>):

const multiply = (a: number, b: number): number => {
  return a * b;
};

const greet = (name: string): string => `Hello, ${name}!`;

Основное отличие от обычных объявлений функций заключается в том, что аннотация типа возвращаемого значения указывается перед стрелкой, а не после имени функции. Это обеспечивает типобезопасность TypeScript, сохраняя при этом чистый современный синтаксис, который делает стрелочные функции популярными.

challenge icon

Задание

Легко

Преобразуйте следующее объявление обычной функции в стрелочную функцию, сохраняя все аннотации типов:

function subtract(a: number, b: number): number {
  return a - b;
}

Создайте стрелочную функцию с именем subtract, которая выполняет ту же операцию с теми же типами параметров и типом возвращаемого значения.

Затем создайте две дополнительные стрелочные функции:

  • Стрелочную функцию с именем createMessage, которая принимает параметр text типа string и возвращает строку в формате "Message: [text]". Включите явные аннотации типов как для параметра, так и для типа возвращаемого значения.
  • Стрелочную функцию с именем isPositive, которая принимает параметр num типа number и возвращает true, если число больше 0, в противном случае — false. Включите явные аннотации типов как для параметра, так и для типа возвращаемого значения.

Протестируйте свои стрелочные функции, вызвав их со следующими значениями и выведя результаты на печать:

  • Вызовите subtract с 10 и 3
  • Вызовите createMessage с "Hello World"
  • Вызовите isPositive с -5
  • Вызовите isPositive with 8

Выведите каждый результат на отдельной строке в указанном выше порядке.

Попробуйте сами

// TODO: Преобразуйте обычную функцию в стрелочную и создайте дополнительные стрелочные функции

// TODO: Создайте стрелочную функцию subtract с аннотациями типов

// TODO: Создайте стрелочную функцию createMessage с аннотациями типов

// TODO: Создайте стрелочную функцию isPositive с аннотациями типов

// TODO: Протестируйте свои стрелочные функции и выведите результаты
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Введение в TypeScript

Потренируйтесь самостоятельно: Песочница TypeScript