Асинхронно предаване на резултат към callback в JavaScript

Нека сега асинхронната операция след завършването си не извежда нищо в конзолата, а получава някакъв резултат. Нека това бъде масив с данни, който, например, може да е получен чрез AJAX. Но тъй като все още не знаем как да работим с AJAX, просто ще симулираме това получаване:

javascriptfunction make() {
  setTimeout(function() {
    let res = [1, 2, 3, 4, 5]; // масив с резултат
  }, 3000);
}

Нека направим така, че масивът с резултата да се предава в параметър на callback-а:

javascriptfunction make(callback) {
  setTimeout(function() {
    let res = [1, 2, 3, 4, 5];
    callback(res); // предаваме резултата като параметър
  }, 3000);
}

Сега, при предаване на callback-а при извикването на функцията make можем да напишем в него параметър - и в този параметър ще попадне резултатът от асинхронната операция:

javascriptmake(function(res) {
  console.log(res); // нашият масив
});
Задание 1

Допълнете кода на callback-а така, че да намира сумата от елементите на масива с резултата.