@Sirius077

Почему результат reduce странный?

Почему когда делаю так:
function getAverageAge(users) {
  
  let sum = users.reduce(function(accum, item) {
    let average = accum + item.age;
     return average / users.length;
    
  },0)
 return sum
}

let vasya = { name: "Вася", age: 25 };
let petya = { name: "Петя", age: 30 };
let masha = { name: "Маша", age: 29 };

let arr = [ vasya, petya, masha ];

alert( getAverageAge(arr) ); // (25 + 30 + 29) / 3 = 28

выводит результат 13.925... хотя должен 28, по отдельности users.length = 3 а average = 84 . Почему так происходит тут?
  • Вопрос задан
  • 130 просмотров
Решения вопроса 1
Seasle
@Seasle Куратор тега JavaScript
Потому что в каждой следующей итерации Вы возвращаете "сумму" разделенную на количество.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы