#javascript #momentjs
#javascript #momentjs
Вопрос:
Как я могу выполнить математические вычисления, используя временные метки видео формата «00: 01: 00»?
Например, учитывая временную метку типа, var start = "00:01:00";
как я могу добавить время к start
, используя другую временную метку (например, var end = "00:05:00"
), и получить результат, используя тот же формат (например, var sum = "00:06:00"
)?
Я рассмотрел возможность использования Moment.js чтобы сделать это, но эта библиотека хочет принудительно привязать все к дате, что, похоже, не очень подходит для того, что я пытаюсь сделать.
Ответ №1:
На самом деле, вы можете сделать это с помощью moment, проверьте приведенный ниже код.
var date = moment("00:01:00", 'mm:ss:SS');
var date2 = moment("00:05:00", 'mm:ss:SS');
date.add(date2);
var element = document.getElementById('app');
element.innerHTML = date.format('mm:ss:SS');
<div id="app"> </app>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.2.1/moment.min.js" type="text/javascript"></script>
Комментарии:
1. Спасибо вам за это! Хотя, я просто не понял, что не передал самую сложную часть моей проблемы. Мне нужно добавить это смещение, используя другую временную метку в стиле видео. Сейчас я обновлю свой вопрос.
2. Интересно, что ваш ответ работает с Moment 2.2.1, однако 2.24.0 (последняя версия) завершается с ошибкой: «Предупреждение об устаревании: предоставленное значение не соответствует распознанному формату RFC2822 или ISO. построение moment возвращается к js Date(), что ненадежно во всех браузерах и версиях. Форматы даты, отличные от RFC2822 / ISO, не приветствуются и будут удалены в предстоящем крупном выпуске. Пожалуйста, обратитесь к momentjs.com/guides/#/warnings/js-date для получения дополнительной информации.» Это одна из причин, почему я был обеспокоен использованием
Date
. Видя, что ваше решение действительно работает, я с радостью отдам вам должное. Спасибо!