Avatar ·

كيفية إيقاف التنفيذ (sleep) في JavaScript؟ أبحث عن دالة مشابهة لـ sleep() في اللغات الأخرى

مرحبًا بالجميع! أنا مبتدئ في JavaScript، انتقلت من Python، وواجهت مشكلة. في Python، كنت أستخدم `time.sleep(2)` بشكل متكرر لإيقاف تنفيذ البرنامج مؤقتًا، مثلاً عند العمل مع API لتجنب تجاوز حد الطلبات، أو في الرسوم المتحركة في وحدة التحكم. في JavaScript، حاولت كتابة شيء مشابه: ```javascript function sleep(ms) { // ????? } console.log("نبدأ"); sleep(2000); console.log("مرت ثانيتان"); ``` لكنني لم أجد دالة `sleep()` مدمجة. حاولت استخدام `setTimeout`، لكنه لا يوقف تنفيذ الكود، بل يؤجل فقط استدعاء callback. ونتيجة لذلك، تظهر رسالة "مرت ثانيتان" فورًا، وليس بعد ثانيتين. أرشدوني إلى كيفية تنفيذ تأخير في JavaScript بشكل صحيح؟ أحتاج إلى أن يتم تنفيذ الكود بشكل تسلسلي: أولاً تظهر "نبدأ"، ثم توقف لمدة ثانيتين، وبعدها فقط تظهر "مرت ثانيتان". يُفضل أن يكون الحل حديثًا ويعمل في المتصفح و Node.js. شكرًا مقدمًا.