Kodi sinkron dhe asinkron në JavaScript
Le të shqyrtojmë kodin e mëposhtëm:
console.log('1');
console.log('2');
Është e qartë se së pari do të ekzekutohet shkrimi i parë në konsol, e më pas - i dyti. Kjo do të thotë se komandat e kodit tonë ekzekutohen njëri pas tjetrit - sipas rendit të tyre në kod. Ky lloj kodi quhet sinkron.
Tani le të shqyrtojmë kodin e mëposhtëm:
setTimeout(function() {
console.log('1');
}, 3000);
console.log('2');
Në këtë rast, komandat nuk ekzekutohen në rendin e shfaqjes në kod: shkrimi i parë në konsol do të ekzekutohet kur të vijë koha për të, por pjesa tjetër e kodit nuk e pret atë moment, por vazhdon të ekzekutohet. Ky lloj kodi quhet asinkron.
Kodi asinkron shfaqet mjaft shpesh në JavaScript: gjatë punës me kohëmatës, gjatë lidhjes së përpunuesve të ngjarjeve, gjatë ngarkimit të fotove, gjatë punës me teknologjinë AJAX, e cila lejon ngarkimin e pjesëve të faqes nga serveri, gjatë punës me NodeJS, i cili përfaqëson JavaScript në anën e serverit.