⊗jsSpACInr 155 of 294 menu

Asynkron kod med callbacks i JavaScript

Låt oss säga att vi har en asynkron funktion:

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

Låt oss säga att vi använder denna funktion på följande sätt:

make(); console.log('2'); // kommer att köras först

Låt oss säga att vi vill göra så att den andra utskriften till konsolen utförs efter att den asynkrona operationen inuti funktionen har utförts. Ett av tillvägagångssätten som används för detta är att använda en callback: vi lägger in koden som ska vänta i en anonym funktion och skickar den som en parameter till funktionen make:

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

Självklart löser inte detta vårt problem i sig. För nu har vi bara kommit överens om följande: om du vill köra kod efter att make har utförts, skicka in den koden som en callback till anropet av make.

Låt oss rätta till koden för funktionen make så att den börjar fungera i enlighet med vår överenskommelse:

function make(callback) { setTimeout(function() { console.log('1'); // någon form av asynkron operation, kanske inte bara en callback(); // sedan vår callback }, 3000); }

Berätta i vilken ordning siffrorna kommer att skrivas ut i konsolen:

function make(callback) { setTimeout(function() { console.log('1'); callback(); }, 3000); } make(function() { console.log('2'); console.log('3'); });
Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa