هذه ترجمة النص من الروسية إلى العربية مع الحفاظ على جميع علامات HTML وعدم تغيير أي كود: ```html سلسلة غير متزامنة مع مهلات زمنية وأولويات ```
JavaScript
Hard
promises
مهمة «هذه ترجمة النص من الروسية إلى العربية مع الحفاظ على جميع علامات HTML وعدم تغيير أي كود: ```html سلسلة غير متزامنة مع مهلات زمنية وأولويات ```»
```html
نفذ الدالة asyncChain(tasks, timeout) التي تستقبل مصفوفة من المهام (دوال تُرجع وعوداً) ومهلة زمنية بالمللي ثانية. يجب على الدالة تنفيذ المهام بشكل تسلسلي، ولكن مع إمكانية تخطي المهمة إذا تجاوز تنفيذها المهلة الزمنية المحددة. إذا لم تتمكن المهمة من الإكمال خلال المهلة، يجب رفضها، وتستمر السلسلة مع المهمة التالية. يتم جمع نتائج المهام التي تم تنفيذها بنجاح في مصفوفة وإعادتها. إذا تم تخطي جميع المهام، قم بإرجاع مصفوفة فارغة. انتبه إلى معالجة الأخطاء: إذا انتهى الوعد بخطأ، فإن هذا يُعتبر أيضاً تخطياً للمهمة.
```
نفذ الدالة asyncChain(tasks, timeout) التي تستقبل مصفوفة من المهام (دوال تُرجع وعوداً) ومهلة زمنية بالمللي ثانية. يجب على الدالة تنفيذ المهام بشكل تسلسلي، ولكن مع إمكانية تخطي المهمة إذا تجاوز تنفيذها المهلة الزمنية المحددة. إذا لم تتمكن المهمة من الإكمال خلال المهلة، يجب رفضها، وتستمر السلسلة مع المهمة التالية. يتم جمع نتائج المهام التي تم تنفيذها بنجاح في مصفوفة وإعادتها. إذا تم تخطي جميع المهام، قم بإرجاع مصفوفة فارغة. انتبه إلى معالجة الأخطاء: إذا انتهى الوعد بخطأ، فإن هذا يُعتبر أيضاً تخطياً للمهمة.
```
تنسيق الإدخال
السطر الأول: الرقم n — عدد المهام. ثم n سطر، كل سطر يحتوي على عددين صحيحين: delay و result. delay — التأخير قبل حل الوعد (مللي ثانية)، result — القيمة التي يعيدها الوعد. السطر الأخير: timeout — أقصى وقت لتنفيذ مهمة واحدة (مللي ثانية).
تنسيق الإخراج
مصفوفة نتائج المهام التي تم تنفيذها بنجاح (أرقام)، مفصولة بمسافات. إذا كانت المصفوفة فارغة، قم بإظهار 'none'.
أمثلة
مثال 1
الإدخال
2
300 10
200 20
250
الإخراج
20
مثال 2
الإدخال
1
500 100
400
الإخراج
none
مثال 3
الإدخال
Integer
5
push 10
push 20
peek
pop
pop
الإخراج
none
main.js