С бэкенда приходят табличные данные в виде массива объектов. Напишите функцию для подсчёта суммы поля amount.

Для числового amount используйте reduce с начальным значением 0. Формат и допустимость пропущенных или строковых сумм нужно определить отдельно.

Короткий ответ

Что ответить на собеседовании

Для числового amount используйте reduce с начальным значением 0. Формат и допустимость пропущенных или строковых сумм нужно определить отдельно.

Подробный разбор

Ответ с пояснениями

Для числового amount используйте reduce с начальным значением 0. Формат и допустимость пропущенных или строковых сумм нужно определить отдельно.

Строгий вариант:

function sumAmount(rows) {
  return rows.reduce((sum, row) => {
    if (typeof row.amount !== 'number' || !Number.isFinite(row.amount)) {
      throw new TypeError('amount must be finite');
    }
    return sum + row.amount;
  }, 0);
}

Пустой массив даёт 0. Для денег лучше согласовать целые минимальные единицы или decimal-представление; Number имеет ограничения точности и может переполниться на больших суммах.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее