Как получить разницу между датами js
Перейти к содержимому

Как получить разницу между датами js

  • автор:

Разность между датами в формате timestamp в JavaScript

Формат timestamp предназначен для нахождения разницы между датами. Давайте для примера получим разницу в миллисекундах между текущим и заданным моментом времени:

let now = new Date(); let date = new Date(2015, 11, 4, 23, 59, 59); let diff = now.getTime() — date.getTime(); console.log(diff);

Очевидно, что чаще всего нам нужна разница не в миллисекундах, а в днях или в годах. Для этого просто нужно перевести милисекунды в нужное нам значение.

Например, чтобы перевести милисекунды в секунды, нужно милисекунды поделить на 1000 , чтобы секунды перевести в минуты, нужно секунды поделить на 60 и так далее.

Давайте, например, переведем разницу между датами в минуты:

console.log(diff / (1000 * 60));

А теперь — в часы:

console.log(diff / (1000 * 60 * 60));

Выведите на экран количество дней, прошедшее между 1 марта 1988 года и 10 января 2000 года.

Выведите на экран количество месяцев, прошедшее между вашим рождением и текущим моментом времени.

Разница

Здесь отображается разница между двумя дато-временными значениями в указанной единице.

Для получения разницы в миллисекундах, используйте dayjs#diff .

const date1 = dayjs('2019-01-25') const date2 = dayjs('2018-06-05') date1.diff(date2) // 20214000000 миллисекунд 

Для получения разницы в формате другой единицы измерения, передайте её в качестве второго аргумента.

const date1 = dayjs('2019-01-25') date1.diff('2018-06-05', 'month') // 7 

По умолчанию dayjs#diff обрежет десятичные значения в результате, возвращая целое число. Для получения числа с плавающей запятой, необходимо добавить true в качестве третьего аргумента.

const date1 = dayjs('2019-01-25') date1.diff('2018-06-05', 'month', true) // 7.645161290322581 

Список всех доступных единиц измерения

Единицы измерения не чувствительны к регистру, также поддерживают длинную и краткую формы записи. Короткие формы чувствительны к регистру.

Единица измерения Краткая запись Описание
day d День
week w Неделя в году
quarter Q Квартал
month M Месяц (Январь — 0, Декабрь — 11)
year y Год
hour h Час
minute m Минута
second s Секунда
millisecond ms Миллисекунда

Разница между двумя датами в JavaScript

Разницу в днях между 2-мя датами в JavaScript можно получить следующим образом:

  • Создать две переменные типа Date, передав обязательно даты как строку обернутую кавычками.
  • Получить разницу между датами в миллисекундах.
  • Применить деление, чтобы привести результат к дням.
var date1 = new Date("7/11/2010"); var date2 = new Date("12/12/2010"); var timeDiff = Math.abs(date2.getTime() - date1.getTime()); var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24)); alert(diffDays);

Если вы хотите изучить стек ASP.NET MVC, SQL, jQuery, CSS – Бесплатный курс по веб-разработке ASP.NET MVC

Если вы новичок в программировании, то посмотрите наше руководство Как стать программистом с нуля

Мы развиваем платформу Falcon Space. Суть – создание функциональных личных кабинетов в веб с использованием только MS SQL (бизнес-логика) и Bootstrap (для стилизации). Вся разработка осуществляется через личный кабинет разработчика на портале.

Демостенд с примерами кода

Описание веб-платформы для технического специалиста

Опубликовано в JS & jQuery

  • Демонстрация компонентов Falcon Space
  • Смотреть демо веб-платформы Falcon Space
  • Подпишись на наш видеоканал в Youtube

Сравнение дат и разность между датами

Пусть вам нужно сравнить две даты и узнать какая из них больше. Существует несколько способов сделать это. Из мы и разберем в данном видео. Кроме того, вы узнаете, как найти разницу между датами, а также как пользоваться функцией Date.parse, традиционно вызывающей сложности у новичков.

Исходники кода

var date1 = ‘2018-12-01’; var date2 = ‘2019-12-01’; console.log(new Date(date1) — new Date(date2)); var date1 = ‘2018-12-01’; var date2 = ‘2019-12-01’; console.log(Date.parse(date1) — Date.parse(date2));

Смотрите также

  • видео
    продвинутая работа с new Date в JavaScript
  • видео
    определение знака зодиака
  • видео
    обратный отсчет до даты

Трепачёв Дмитрий © 2012-2024
t.me/trepachev_dmitry

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *