ДМБ-таймер
Укажите дату призыва — счётчик покажет, сколько дней осталось и сколько уже позади. Дата остаётся в вашем браузере, при следующем заходе вводить её заново не нужно.
До следующих суток: —
Выберите дату призыва — счёт пойдёт сразу.
Как считается
Дата увольнения — это дата призыва плюс выбранный срок. Дни считаются по календарю: от полуночи сегодняшнего дня до полуночи дня увольнения, поэтому переход на другое время и високосный год ничего не смещают.
«Осталось» — это полные сутки, которые ещё впереди. В последний день счётчик покажет ноль, а не единицу: день увольнения уже наступил.
Чего этот счётчик не знает
Настоящей даты приказа. Она объявляется отдельно и от арифметики не зависит — здесь считается срок, а не приказ.
Отпусков, госпиталя и переносов. Всё, что сдвигает дату, придётся учесть самому, изменив дату призыва.
Ничего из введённого не уходит на сервер: дата лежит только в вашем браузере и стирается вместе с его данными.
Почему счёт идёт по календарю
Разница между двумя датами часто считают делением миллисекунд на длину суток. На отрезке в год это ошибается: в сутках перехода на другое время 23 или 25 часов, а в високосном году лишний день. Дробный остаток при этом не виден — он просто округляется, и счётчик уверенно показывает число, которое на день расходится с календарём.
Здесь вычитаются полуночи двух дат, поэтому «ровно год» остаётся ровно годом, а смена даты происходит в полночь, а не в случайный момент суток. Отсчёт до следующих суток на странице показывает ровно это: когда число сменится.