Sinhronais un asinhronais kods JavaScript
Apskatīsim šādu kodu:
console.log('1');
console.log('2');
Acīmredzami, ka vispirms izpildīsies pirmā izvade konsole, un pēc tam - otrā. Tas nozīmē, ka mūsu koda komandas tiek izpildītas pēc kārtas - to secībā, kādā tās atrodas kodā. Šādu kodu sauc par sinhronu.
Apskatīsim tagad šādu kodu:
setTimeout(function() {
console.log('1');
}, 3000);
console.log('2');
Šajā gadījumā komandas netiek izpildītas to secībā, kādā tās atrodas kodā: pirmā izvade konsole izpildīsies, kad iestāsies tās laiks, bet pārējais kod to negaida, bet turpina izpildīties. Šādu kodu sauc par asinhronu.
Asinhrons kods JavaScript rodas pietiekami bieži: strādājot ar taimeriem, pievienojot notikumu apstrādes funkcijas, ielādējot attēlus, strādājot ar AJAX tehnoloģiju, kas ļauj ielādēt lapas daļas no servera, strādājot ar NodeJS, kas ir servera puse JavaScript.