Помогите создать функцию которая считает среднюю оценку из массива в JS

Не получается сделать функцию которая считает среднюю оценку из массива. Попытался сделать это через разные методы, но к сожалению почему-то не выходит.

Задача такова: Создать функцию которая считает среднюю оценку и выводит имя и среднюю оценку для каждого элемента массива.

Вот массив:

let studentList= [
    {name: "Ivan", marks: [8,7,6,5,8]},
    {name: "Adrian", marks: [9,8,8,7,8]},
    {name: "Andrei", marks: [6,8,9,7,7]},
    {name: "Alex", marks: [10,9,9,8,10]},
    {name: "Maxim", marks: [4,5,7,7,6]}
]

Вот что получилось у меня:

let marksSum = 0;
let length = studentList.length;
var result = studentList.reduce(function(marksSum, current){
    return marksSum + current;
});
console.log(result/length);

Ответы (1 шт):

Автор решения: Igor

let studentList = [
    {name: "Ivan", marks: [8,7,6,5,8]},
    {name: "Adrian", marks: [9,8,8,7,8]},
    {name: "Andrei", marks: [6,8,9,7,7]},
    {name: "Alex", marks: [10,9,9,8,10]},
    {name: "Maxim", marks: [4,5,7,7,6]}
];

let averages = studentList.map(s => {
  return {
    name: s.name,
    av: s.marks.reduce((a, i) => a + i) / s.marks.length
  };
});
console.log(averages);

→ Ссылка