Как запустить секундомер с определенного времени в JavaScript

Чтобы запустить секундомер с определенного времени в JavaScript, вы можете использовать объект Dateвместе с некоторыми базовыми арифметическими действиями. Вот пример фрагмента кода, демонстрирующий это:

function startStopwatchFromSpecificTime(startTime) {
  var currentTimestamp = Date.now();
  var elapsedTime = currentTimestamp - startTime;
  // Convert elapsed time to desired format (e.g., hours, minutes, seconds)
  var hours = Math.floor(elapsedTime / (1000 * 60 * 60));
  var minutes = Math.floor((elapsedTime % (1000 * 60 * 60)) / (1000 * 60));
  var seconds = Math.floor((elapsedTime % (1000 * 60)) / 1000);
  console.log('Elapsed time:', hours, 'hours', minutes, 'minutes', seconds, 'seconds');
}
// Example usage
var startTime = new Date('2024-01-01T08:00:00').getTime(); // Specify the start time here
startStopwatchFromSpecificTime(startTime);

В этом примере функция startStopwatchFromSpecificTimeпринимает параметр startTime, который представляет конкретное время, с которого вы хотите запустить секундомер. Он вычисляет прошедшее время путем вычитания startTimeиз текущей отметки времени с помощью Date.now(). Затем он преобразует прошедшее время в нужный формат (в данном случае часы, минуты и секунды) с помощью простой арифметики.