JaycobYT

4) Таймер обратного отсчёта до указанной даты

Apr 20th, 2023 (edited)
1,886
1
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // Функция для вычисления оставшегося времени до указанной даты
  2. function remainingDate() {
  3.   // Проверяем, что пользователь ввел дату и время
  4.   if (!args[0] || !args[1]) {
  5.     return "&cВведите дату и время через запятую. Пример: javascript_remaining_date_10.05.2023,15:00:00";
  6.   }
  7.  
  8.   // Получаем дату и время, указанные пользователем
  9.   var dateParts = args[0].split(".");
  10.   var timeParts = args[1].split(":");
  11.   var userDate = new Date(dateParts[2], dateParts[1] - 1, dateParts[0], timeParts[0], timeParts[1], timeParts[2]);
  12.  
  13.   // Получаем текущую дату и время
  14.   var currentDate = new Date();
  15.  
  16.   // Если указанная дата меньше текущей даты, возвращаем "Просрочено"
  17.   if (userDate < currentDate) {
  18.     return "Просрочено";
  19.   }
  20.  
  21.   // Вычисляем разницу в миллисекундах между указанной датой и текущей датой
  22.   var diff = userDate - currentDate;
  23.  
  24.   // Вычисляем количество дней, оставшихся до указанной даты
  25.   var days = Math.floor(diff / (1000 * 60 * 60 * 24));
  26.   diff -= days * (1000 * 60 * 60 * 24);
  27.   // Вычисляем количество часов, оставшихся до указанной даты
  28.   var hours = Math.floor(diff / (1000 * 60 * 60));
  29.   diff -= hours * (1000 * 60 * 60);
  30.   // Вычисляем количество минут, оставшихся до указанной даты
  31.   var minutes = Math.floor(diff / (1000 * 60));
  32.   diff -= minutes * (1000 * 60);
  33.   // Вычисляем количество секунд, оставшихся до указанной даты
  34.   var seconds = Math.floor(diff / 1000);
  35.  
  36.   // Возвращаем строку, содержащую количество часов, минут и секунд до целевой даты
  37.   return days + " дн. " + hours + " ч. " + minutes + " мин. " + seconds + " сек.";
  38. }
  39.  
  40. // Вызываем функцию remainingDate()
  41. remainingDate();
Advertisement
Add Comment
Please, Sign In to add comment