Калькулятор дат

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

Разница по календарю
  • Всего дней
  • Полных недель
  • Рабочих дней
  • Выходных

Дни считаются по календарю, а не по часам: дважды в год в сутках 23 или 25 часов, и арифметика на миллисекундах теряет целый день.

Как пользоваться

  1. Выберите две даты — числа появятся сразу.
  2. Поставьте «считать и последний день», если он тоже входит в период.
  3. Перейдите на «прибавить или отнять», чтобы сдвинуть дату на годы, месяцы или дни.
  4. Включите там рабочие дни, чтобы пропускать субботы и воскресенья.

Полезно знать

Почему дни считаются по календарю

Вычесть одну метку времени из другой и разделить на 86 400 000 выглядит верно, но ошибается дважды в год: в сутки перевода часов их 23 или 25. «Ровно 30 дней» превращается в 29 дней и 23 часа и округляется до 29. Здесь расчёт идёт по календарным датам, поэтому ответ держится в любом часовом поясе и при любом переводе стрелок.

Месяц — это не тридцать дней

Прибавьте месяц к 31 января — честный ответ 28 февраля, последний существующий день. Браузер, предоставленный сам себе, выдаст 3 марта: он молча перетекает в следующий месяц. Та же ловушка с високосными годами: 29 февраля плюс год — это 28 февраля, а не 1 марта. Оба случая здесь обработаны.

Частые вопросы

Учитываются ли праздники?

Нет, только субботы и воскресенья. Набор праздников свой в каждой стране и меняется каждый год, а придуманный список хуже, чем его отсутствие: выглядит достоверно, а считает неверно. Для точного числа возьмите рабочие дни из своего производственного календаря.

Почему получился день меньше, чем я ждал?

Скорее всего, последний день тоже должен считаться. С 1 по 10 января разница девять дней, а отпуска — десять. Ровно для этого и стоит флажок «считать и последний день».

Что именно означает «1 год 2 месяца 3 дня»?

Это то же расстояние в календарных единицах: сколько поместилось целых лет, потом целых месяцев в остатке, потом дней. Это не сумма, делённая на 365 и 30, — такие числа показаны отдельно, как всего дней, недель и месяцев.

Можно ли посчитать этим возраст?

Да: поставьте дату рождения первой, сегодняшнюю — второй, и разница по календарю будет возрастом в годах, месяцах и днях. Для дня рождения, годовщины или даты договора расчёт тот же самый.

Похожие инструменты