Вступить в клуб →
сложнаяjavascriptTypeScript на бэкенде: данные из базы, конфиг и события

Проверка события заказа из брокера без исключений

Потребитель получает события из брокера и должен отличать корректные от битых, не падая. Напишите функцию validateOrderEvent(event).

Допустимые события:

  • { type: 'order_paid', orderId, total } — orderId непустая строка, total конечное число не меньше 0;
  • { type: 'order_cancelled', orderId, reason } — orderId непустая строка, reason непустая строка.

Верните { ok: true, value }, где value содержит только поля своего типа, или { ok: false, errors }, где errors — массив имён неверных полей в порядке: type, orderId, total/reason. Если event не объект или type неизвестен — { ok: false, errors: ['type'] }.

заготовка решения

function validateOrderEvent(event) {
  // ваш код
  return undefined;
}

🔒 Проверка ответа — для участников клуба

  • Автотесты прямо в браузере
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела