Задать вопрос
@Yapryntsew

Как запускать работу js скрипта каждый час по глобальному времени?

Как выполнять срипт каждый час начиная считать с 00:00. Т.е если пользователь зайдет на сайт в 11:58, в 12:00 запуститься скрипт и т.д
  • Вопрос задан
  • 1793 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 1
twobomb
@twobomb
var startScript = (new Date().getHours()+1)%24;//Берем текущий час например 21 прибавляем 1, 21 + 1 = 22 это час когда нужно запустить скрипт
if(new Date().getMinutes() == 0)//Если мы зашли на сайт и минуты равны 0, например 22:00 то сразу же запускаем наш скрипт
    myScript();
loop();//Вызываем наш цикл
function loop(){
    var date = new Date();//Берем текущее время
    if(date.getMinutes() == 0 && date.getHours()==startScript){//Если минут равны нулю и текущий час тому в котором нужно запустить скрипт
     	   startScript = (startScript+1)%24 ;//прибавляем +1 к часу в котором нужно запустить скрипт
        	myScript();// и запускаем скрипт
    }
    setTimeout(loop,30000);//проверка текущего времени 1 раз в 30 секунд, если нужно чтобы скрипт запускался с точностью до секунды (22:00:00) поставить ~500
}

function myScript(){
 	//Ваш скрипт    
    alert("hello,word!");
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
18 дек. 2024, в 15:00
300 руб./в час
18 дек. 2024, в 14:53
30000 руб./за проект
18 дек. 2024, в 14:45
25000 руб./за проект