Корзина Ozon получает суммы в копейках — так нет ошибок округления. Покажите их по-русски: группы по три цифры через неразрывный пробел (U+00A0), копейки через запятую, знак ₽ тоже через неразрывный пробел — чтобы «₽» не уехал на новую строку на узком экране.
Напишите formatPrice(kopecks) без Intl и toLocaleString. Копейки показываем двумя цифрами, только если они не нулевые: 1234550 → «12 345,50 ₽», 1234500 → «12 345 ₽». Отрицательная сумма (возврат) — со знаком минус в начале: «-1 500 ₽».
В работе: Цены в каталоге и корзине, суммы в банковских выписках, итоги заказа.
Пример 1: с копейками
Аргументы теста
1234550
Ожидается
"12 345,50 ₽"
Пример 2: без копеек
Аргументы теста
1234500
Ожидается
"12 345 ₽"
Как проверяем
Объявите
formatPrice — тест вызывает её сам. Таймеры и Date в тестах ненастоящие: время идёт по команде теста, поэтому setTimeout на 5 секунд проверяется мгновенно. Тестов 8: 2 открыты выше, остальные приходят после старта подхода. Лимит — 2 с на тест.
function formatPrice(kopecks) // → строка
Источник: на задачах Ozon: корзина. Условие пересказано своими словами.
Давали на собеседовании?
Ответов пока мало — ваш поможет.
Стр. 1Ctrl+Enter — запуск · Ctrl+Shift+Enter — отправка
Ожидаемый ответ не нужен: покажем, что вернула функция.
Здесь появится результат отправки.