shnopik87
@shnopik87
Утром, познав истину, вечером можно умереть.

Переписать код используя метод reduce?

Всем добрый вечер!
Есть вопрос по JS не судите строго)
const countScore = (answers, livesNumber) => {
  let score = 0;
  for (let i = 0; i < answers.length; i++) {
    const current = answers[i];
    if (current.value) {
      score += 100;
      if (current.time < NUM) {
        score += 50;
      } else if (current.time > 20) {
        score -= 50;
      }
    }
  }
  score += livesNumber * 50;
  return score;
};

как мне данный код переписать с помощью reduce?
  • Вопрос задан
  • 103 просмотра
Решения вопроса 2
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
const countScore = (answers, livesNumber) => {
  return answers.reduce(
    (score, current) => {
      if (current.value) {
        score += 100;
        if (current.time < NUM) {
          score += 50;
        } else if (current.time > 20) {
          score -= 50;
        }
      }

      return score;
    },
    livesNumber * 50
  )
}
Ответ написан
0xD34F
@0xD34F Куратор тега JavaScript
const countScore = (answers, livesNumber) =>
  answers.reduce((acc, n) => (n.value
    ? 100 + (n.time < NUM ? 50 : n.time > 20 ? -50 : 0)
    : 0
  ) + acc, livesNumber * 50);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
RUVOD Москва
До 150 000 руб.
UMA.TECH Москва
от 150 000 до 215 000 руб.
Foodtronics Москва
от 100 000 до 200 000 руб.
27 июн. 2019, в 01:26
50000 руб./за проект
27 июн. 2019, в 00:27
250000 руб./за проект