JavaScript-də Asinxron Nəticənin Callback-ə Ötürülməsi
İndi isə asinxron əməliyyatın özünü tamamladıqdan sonra konsola heç nə çıxartmadığını, əksinə müəyyən bir nəticə əldə etdiyini fərz edək. Bunun məsələn, AJAX vasitəsilə əldə edilə biləcək məlumatlar olan bir massiv olduğunu düşünək. Lakin, hələlik AJAX ilə işləməyi bacarmadığımız üçün, bunu sadəcə olaraq modelləşdirəcəyik:
javascriptfunction make() {
setTimeout(function() {
let res = [1, 2, 3, 4, 5]; // nəticə massivi
}, 3000);
}
Gəlin massivin nəticəsinin callback funksiyasının parametrinə ötürülməsini təmin edək:
javascriptfunction make(callback) {
setTimeout(function() {
let res = [1, 2, 3, 4, 5];
callback(res); // nəticəni parametr kimi ötürürük
}, 3000);
}
İndi isə, funksiyanı çağırarkən callback ötürdükdə
make biz onun içərisində parametr yaza bilərik
- və bu parametrə asinxron əməliyyatın nəticəsi
düşəcək:
javascriptmake(function(res) {
console.log(res); // bizim massivimiz
});
Задание 1
Callback-in kodunu elə tamamlayın ki, o, nəticə massivinin elementlərinin cəmini tapsın.