العمليات المتزامنة تُنفَّذ واحدة تلو الأخرى: كل عملية تنتظر انتهاء السابقة قبل أن تبدأ.
const a = 5;
const b = a * 2;
console.log(b); // 10
console.log('done');
معظم الكود العادي متزامن: الحسابات، والمتغيرات، والشروط، والحلقات.
متى تصبح مشكلة؟
إذا كانت العملية طويلة، مثل حلقة ضخمة، فإنها تجمّد الصفحة حتى تنتهي:
for (let i = 0; i < 5e9; i++) {} // the page freezes
لهذا تُجعل العمليات التي تنتظر شيئًا خارجيًا (الشبكة، والملفات) غير متزامنة.