Как правильно реализовать логику приложения на JS?
Всем привет. В общем, необходимо при загрузке станицы сохранить текущее время (сделал через localStorage), далее после обновления страницы через 30 минут, взять старое значение (прочитать из LocalStorage) и сравнить с новым значением времени и если время изменилось на 30 минут, обновить данные. Что-то не очень получается логику организовать ((( Может есть возможность чуть подтолкнуть к реализации (писать код полностью не нужно). Просто
сейчас каждый раз при перезагрузке страницы у меня перезаписывается этот localstorage. Спасибо
Может есть возможность чуть подтолкнуть к реализации
Да, конечно: при загрузке станицы сохранить текущее время (сделал через localStorage), далее после обновления страницы через 30 минут, взять старое значение (прочитать из LocalStorage) и сравнить с новым значением времени и если время изменилось на 30 минут, обновить данные.
// Проверяем, есть ли значение времени в localStorage
if (!localStorage.getItem('savedTime')) {
// Если нет, то сохраняем текущее время
localStorage.setItem('savedTime', new Date().getTime());
}
// Устанавливаем интервал, который будет запускаться каждые 30 минут
setInterval(function() {
// Получаем сохраненное значение времени из localStorage
const savedTime = localStorage.getItem('savedTime');
// Проверяем, прошло ли 30 минут с момента сохранения времени
if (new Date().getTime() - savedTime >= 30 * 60 * 1000) {
// Если прошло, то обновляем данные
updateData();
// Сохраняем новое значение времени в localStorage
localStorage.setItem('savedTime', new Date().getTime());
}
}, 30 * 60 * 1000); // интервал в миллисекундах (30 минут)