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?
  • Вопрос задан
  • 94 просмотра
Пригласить эксперта
Ответы на вопрос 2
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
const countScore = (answers, livesNumber) => answers.reduce((acc, n) => (
  n.value
    ? 100 + (n.time < NUM ? 50 : n.time > 20 ? -50 : 0)
    : 0
) + acc, livesNumber * 50);
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы