⊗jsSpACInr 155 of 294 menu

Asinhroni kod sa kolbekima u JavaScript

Pretpostavimo da imamo neku asinhronu funkciju:

function make() { setTimeout(function() { console.log('1'); }, 3000); }

Pretpostavimo da koristimo ovu funkciju na sledeći način:

make(); console.log('2'); // izvršiće se prvo

Pretpostavimo da želimo da postignemo da se drugi ispis u konzolu izvrši nakon što se izvrši asinhrona operacija unutar funkcije. Jedan od pristupa koji se koristi za ovo je korišćenje kolbeka: umotajmo kod koji čeka u anonimnu funkciju i prosledimo je kao parametar funkciji make:

make(function() { console.log('2'); });

Naravno, samo ovo neće rešiti naš problem. Za sada smo samo uspostavili sledeći dogovor: ako želite da izvršite kod nakon okidanja make, prosledite taj kod kao kolbek pri pozivu make.

Ispravimo kod funkcije make tako da počne da radi u skladu sa našim dogovorom:

function make(callback) { setTimeout(function() { console.log('1'); // neka asinhrona operacija, možda ne samo jedna callback(); // zatim naš kolbek }, 3000); }

Objasnite, kojim redosledom će se ispisati brojevi u konzolu:

function make(callback) { setTimeout(function() { console.log('1'); callback(); }, 3000); } make(function() { console.log('2'); console.log('3'); });
Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij