Ufikishaji wa Matokeo ya Async kwa Callback katika JavaScript
Hebu sasa operesheni ya async baada ya kukamilika isitoe chochote kwenye konsole, bali ipate matokeo fulani. Hebu hii iwe safu ya data ambayo, kwa mfano, ingeweza kupatikana kupitia AJAX. Lakini kwa kuwa hatujui kufanya kazi na AJAX bado, basi tuigize upatikanaji huu:
function make() {
setTimeout(function() {
let res = [1, 2, 3, 4, 5]; // safu iliyo na matokeo
}, 3000);
}
Tufanye hivi, ili safu iliyo na matokeo ifikishwe kwenye parameta ya callback:
function make(callback) {
setTimeout(function() {
let res = [1, 2, 3, 4, 5];
callback(res); // tunafikisha matokeo kama parameta
}, 3000);
}
Sasa, wakati wa kufikisha callback kwenye wito wa funktsheni
make tunaweza kuandika parameta ndani yake
- na kwenye parameta hii ndio matokeo ya operesheni ya async
yatakayoingia:
make(function(res) {
console.log(res); // safu yetu
});
Kamilisha msimbo wa callback ili upate jumla ya vipengele vya safu iliyo na matokeo.