JavaScript-də Sinxron və Asinxron Kod
Aşağıdakı kodu nəzərdən keçirək:
console.log('1');
console.log('2');
Aydındır ki, əvvəl konsola birinci çap ediləcək, sonra isə ikinci. Yəni kod əmrləri kodda göründüyü ardıcıllıqla yerinə yetirilir. Belə kod sinxron adlanır.
İndi isə aşağıdakı kodu nəzərdən keçirək:
setTimeout(function() {
console.log('1');
}, 3000);
console.log('2');
Bu halda əmrlər kodda göründüyü ardıcıllıqla yerinə yetirilmir: konsola birinci çap öz vaxtı çatdıqda yerinə yetiriləcək, lakin qalan kod bu anı gözləmir, yerinə yetirilməyə davam edir. Belə kod asinxron adlanır.
Asinxron kod JavaScript-də kifayət qədər tez-tez yaranır: taymerlərlə işləyərkən, hadisə işləyiciləri bağlayarkən, şəkilləri yükləyərkən, səhifənin hissələrini serverdən yükləməyə imkan verən AJAX texnologiyası ilə işləyərkən, server tərəfli JavaScript təmsil edən NodeJS ilə işləyərkən.