تم تعديل الكود كالتالي:

  1. حساب المللي حتى 10 هو تم ضبطه للتأكد من أنه يقوم بحساب المللي ثانية بشكل صحيح حتى الساعة 10:00 صباحًا اليوم أو غدًا، اعتمادًا على الوقت الحالي.
  2. يتم إضافة فحص للتعامل مع السيناريوهات التي يتجاوز فيها الوقت الحالي الساعة 10:00 صباحًا. في مثل هذه الحالات، يقوم الكود بجدولة المكالمة في الساعة 10:00 صباحًا في اليوم التالي عن طريق إضافة 86400000 مللي ثانية (يوم واحد بالمللي ثانية).
  3. يتم وضع استدعاء setInterval() ضمن رد الاتصال setTimeout() لجدولة المكالمة مكالمات متكررة لكل دقيقة.

من خلال دمج هذه التغييرات، سيقوم الكود المقدم الآن بتنفيذ الوظيفة المطلوبة بشكل صحيح في الساعة 10:00 صباحًا ويستمر في القيام بذلك كل دقيقة.

","image":"http://www.luping.net/uploads/20241106/1730869572672af944b2cb0.jpg","datePublished":"2024-11-08T22:22:42+08:00","dateModified":"2024-11-08T22:22:42+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية جدولة وظيفة JavaScript للتشغيل في وقت محدد من اليوم؟

كيفية جدولة وظيفة JavaScript للتشغيل في وقت محدد من اليوم؟

تم النشر بتاريخ 2024-11-08
تصفح:573

How to Schedule a JavaScript Function to Run at a Specific Time of Day?

جدولة استدعاء JavaScript في وقت محدد من اليوم

ضع في اعتبارك الحاجة إلى استدعاء وظيفة JavaScript في وقت محدد كل يوم، مثل الساعة 10:00 صباحًا. يمكن تحقيق هذه المهمة من خلال مجموعة من وظائف جافا سكريبت ومعالجة القيم المرتبطة بالوقت.

فهم الكود

تحاول التعليمات البرمجية المقدمة لفتح نافذة متصفح جديدة في الساعة 10:00 صباحًا ثم بشكل متكرر كل دقيقة. ومع ذلك، فهو يحتاج إلى تحسين ليعمل بشكل صحيح.

ضبط الكود من أجل الدقة

لتعديل الكود من أجل جدولة دقيقة:

millisTill10  = 86400000; // it's after 10am, try 10am tomorrow.

setTimeout(function() {

openAPage();
setInterval(openAPage, 60 * 1000); // Set the interval for subsequent calls

}, millisTill10);

function openAPage() {

// Your function to perform the desired actions

}



تم تعديل الكود كالتالي:

  1. حساب المللي حتى 10 هو تم ضبطه للتأكد من أنه يقوم بحساب المللي ثانية بشكل صحيح حتى الساعة 10:00 صباحًا اليوم أو غدًا، اعتمادًا على الوقت الحالي.
  2. يتم إضافة فحص للتعامل مع السيناريوهات التي يتجاوز فيها الوقت الحالي الساعة 10:00 صباحًا. في مثل هذه الحالات، يقوم الكود بجدولة المكالمة في الساعة 10:00 صباحًا في اليوم التالي عن طريق إضافة 86400000 مللي ثانية (يوم واحد بالمللي ثانية).
  3. يتم وضع استدعاء setInterval() ضمن رد الاتصال setTimeout() لجدولة المكالمة مكالمات متكررة لكل دقيقة.

من خلال دمج هذه التغييرات، سيقوم الكود المقدم الآن بتنفيذ الوظيفة المطلوبة بشكل صحيح في الساعة 10:00 صباحًا ويستمر في القيام بذلك كل دقيقة.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3