Если у меня есть две даты, как я могу использовать JavaScript, чтобы получить разницу между двумя датами в минутах?
javascript
datetime
Джон
источник
источник
Ответы:
Вы можете проверить этот код:
или
var diffMins = Math.floor((...
сбросить секунды, если вы не хотите округлять минуты.источник
Math.round(((diffMs % 86400000) % 3600000) / 60000);
не работает, когда разница больше 60 минутВычитание 2 объектов Date дает разницу в миллисекундах, например:
Math.abs
используется, чтобы иметь возможность использовать абсолютную разницу (поэтомуnew Date('2011/10/09 00:00') - new Date('2011/10/09 12:00')
дает тот же результат).Разделив результат на 1000, вы получите количество секунд. Разделив это на 60, вы получите количество минут. Чтобы округлить до целых минут, используйте
Math.floor
илиMath.ceil
:В этом примере результат будет 720
источник
(Math.floor(seconds/60))+':'+((seconds/60)%60)
если вам тоже нужны оставшиеся секундыnew Date(string)
формат, отличный от строки формата ISO-8601. См. Почему Date.parse дает неверные результаты? или просто используйте числа (например,new Date(2011, 9, 9, 12, 0, 0)
помните, что месяцы основаны на 0).источник
new Date(string)
формат, отличный от строки формата ISO-8601. См. Почему Date.parse дает неверные результаты? или просто используйте числа (например,new Date(2011, 9, 9, 12, 0, 0)
помните, что месяцы основаны на 0).Простая функция для выполнения этого расчета:
источник
Это должно показать разницу между двумя датами в минутах. Попробуйте это в вашем браузере:
источник
(currDate.getTime() - oldDate.getTime()) / 60000
Для тех, кто любит работать с небольшими номерами
источник
Эта проблема легко решается с помощью момента.js, как в следующем примере:
var difference = mostDate.diff(minorDate, "minutes");
Второй параметр можно изменить для других параметров, см. Документацию moment.js.
например: «дни», «часы», «минуты» и т. д.
http://momentjs.com/docs/
CDN для moment.js доступен здесь:
https://cdnjs.com/libraries/moment.js
Спасибо.
РЕДАКТИРОВАТЬ:
MostDate и minorDate должны быть типом момента.
источник
Вот немного веселья, когда я решал что-то похожее в узле.
Вы можете увидеть это в действии на https://repl.it/@GioCirque/TimeSpan-Formatting.
источник
Следующий код работал для меня,
источник
Вы можете сделать следующее:
difference of dates
(разница будет в миллисекундах)milliseconds
вminutes
т.е.ms/1000/60
Код:
источник