სინქრონული და ასინქრონული კოდი JavaScript-ში
განვიხილოთ შემდეგი კოდი:
console.log('1');
console.log('2');
ცხადია, რომ ჯერ მოხდება პირველი გამოტანა კონსოლში, შემდეგ კი - მეორე. ანუ ჩვენი კოდის ბრძანებები შესრულებადია თანმიმდევრობით - იმ მიხედვით, თუ რა თანმიმდევრობითაა ისინი კოდში. ასეთ კოდს ეწოდება სინქრონული.
ახლა განვიხილოთ შემდეგი კოდი:
setTimeout(function() {
console.log('1');
}, 3000);
console.log('2');
ამ შემთხვევაში ბრძანებები არ სრულდება კოდში მათი მიყოლის თანმიმდევრობით: პირველი გამოტანა კონსოლში შესრულდება, როდესაც მოდის მისი დრო, მაგრამ დანარჩენი კოდი არ ელოდება ამ მომენტს, არამედ აგრძელებს შესრულებას. ასეთ კოდს ეწოდება ასინქრონული.
ასინქრონული კოდი JavaScript-ში საკმაოდ ხშირად ჩნდება: ტაიმერებთან მუშაობისას, მოვლენების დამმუშავებლების მიბმისას, სურათების ჩატვირთვისას, AJAX ტექნოლოგიასთან მუშაობისას, რაც საშუალებას იძლევა გვერდის ნაწილების სერვერიდან ჩატვირთვის, NodeJS-თან მუშაობისას, რომელიც წარმოადგენს სერვერულ JavaScript-ს.