Asinhroni prenos rezultata v povratni klic v JavaScript

Naj asinhrona operacija po zaključku ne izpiše ničesar v konzolo, ampak dobi nek rezultat. Naj bo to polje s podatki, ki bi ga na primer lahko dobili prek AJAX. Ker pa z AJAX-om še ne znamo delati, bomo to preprosto simulirali:

javascriptfunction make() {
  setTimeout(function() {
    let res = [1, 2, 3, 4, 5]; // polje z rezultatom
  }, 3000);
}

Naredimo tako, da se polje z rezultatom posreduje v parameter povratnega klica:

javascriptfunction make(callback) {
  setTimeout(function() {
    let res = [1, 2, 3, 4, 5];
    callback(res); // rezultat posredujemo kot parameter
  }, 3000);
}

Zdaj lahko pri posredovanju povratnega klica v klic funkcije make napišemo v njem parameter - in v ta parameter bo prišel rezultat asinhrone operacije:

javascriptmake(function(res) {
  console.log(res); // naše polje
});
Задание 1

Dopolnite kodo povratnega klica tako, da bo našel vsoto elementov polja z rezultatom.