JaycobYT

3) Таймер обратного отсчёта до указанного времени

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