الدرس 4 من 8

الانتظار والعمليات غير المتزامنة

هدف الدرس

الوعود وasync/await

01

الشرح

بعض العمليات تأخذ وقتًا، مثل جلب البيانات من الخادم أو قراءة ملف أو انتظار ردّ، ولا تتوقّف JavaScript حتى تنتهي هذه العمليات، بل تُكمل تنفيذ بقية الكود ثم تعود إلى النتيجة حين تجهز.

والوعد (Promise) قيمة ستصل لاحقًا، وكلمة await تعني «انتظر هنا حتى تصل القيمة»، ولا بد أن تكون كل دالة تستعمل await معرَّفة بـ async.

ولهذا تحتاج الواجهة إلى حالة انتظار يراها المستخدم بين لحظة الطلب ولحظة وصول النتيجة، وإلا ظنّ أن شيئًا تعطّل.

02

المطلوب

عند الضغط على الزر اعرض «جارٍ التحميل…»، ثم انتظر باستعمال wait(600)، ثم اعرض «تم التحميل».

الفحوص

4 فحوص
  1. الضغط يُظهر حالة انتظار فورًا
  2. حالة الانتظار باقية بعد 200 ميلي ثانية
  3. بعد انتهاء الانتظار تظهر «تم التحميل»
  4. الضغطة الثانية تُظهر حالة الانتظار من جديد
03

تلميحات

0/3
index.html
المعاينة
index.html100%
–/4

اضغط «تشغيل وتصحيح» ليبدأ الفحص.

تجد 4 فحوص في بطاقة «المطلوب».