الدرس 4 من 8
الزمن وغير المتزامن
- 15 دقيقة
- 4 معايير للتصحيح
- 3 تلميحات
- إلى المطلوب
هدف الدرس
الوعود وasync/await
01
الشرح
بعض العمليات تأخذ وقتًا: جلب بيانات، قراءة ملف، انتظار ردّ. الـ JavaScript لا يتجمّد بانتظارها، بل يكمل ويعود إليها حين تجهز.
الـ Promise تعهّد بقيمة تصل لاحقًا، وawait يقول «توقّف هنا حتى تصل». وأي دالة فيها await لا بد أن تكون async.
وهذا يفرض أدبًا في الواجهة: بين الطلب والوصول حالة انتظار يجب أن يراها المستخدم، وإلا ظنّ أن شيئًا تعطّل.
02
المطلوب
عند الضغط: اعرض «جارٍ التحميل…»، انتظر بـ wait(600)، ثم اعرض «تم التحميل».
معايير التصحيح
4 معايير- الضغط يُظهر حالة انتظار فورًا
- الحالة لا تزال انتظارًا بعد 200 جزء من الثانية
- بعد انتهاء الانتظار تصير «تم التحميل»
- الضغطة الثانية تعيد حالة الانتظار من جديد