offline version v3
Запись на курсы по HTML, CSS, JavaScript, PHP, фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
⊗jsSpACPR 156 of 294 menu

Асинхронная передача результата в коллбэк в JavaScript

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

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

Сделаем так, чтобы массив с результатом передавался в параметр коллбэка:

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

Теперь, при передаче коллбэка в вызов функции make мы можем написать в нем параметр - и в этот параметр попадет результат асинхронной операции:

make(function(res) { console.log(res); // наш массив });

Допишите код коллбэка так, чтобы он находил сумму элементов массива с результатом.

enru