Unix-время
и дата
Одно поле на всё: введите число — получите дату, введите дату — получите число. Инструмент сам разберётся, что ему дали, а пустое поле показывает текущее время.
Метка времени не знает про часовые пояса
Unix-время — это число секунд, прошедших с полуночи первого января 1970 года по Гринвичу. Одно и то же число во всём мире: в Москве, Владивостоке и Лиссабоне в один и тот же момент оно совпадает. Именно поэтому его и используют — момент времени описывается однозначно, без оговорок.
Пояс появляется только при показе. Число 1788868800 — это и «8 сентября 2026, 12:00 UTC», и «8 сентября, 15:00 в Москве», и то, и другое верно. Отсюда почти все ошибки с датами в программах: где-то момент перевели в местное время, где-то нет, и разница в три часа поехала по всей выгрузке. Поэтому здесь пояс выбирается явно и подписан у каждого значения, а не подразумевается.
Вторая частая беда — секунды против миллисекунд. Различить их по значению невозможно: одно и то же число может означать и 2001 год в секундах, и 1970-й в миллисекундах. Надёжен только один признак — длина записи, и по нему инструмент и определяет тип. Что именно он понял, написано над результатом: если не то, будет видно сразу.
- Одно поле: и число, и дата, тип определяется сам
- Секунды, миллисекунды и микросекунды различаются по длине
- Три пояса: местный, UTC и Москва — со смещением у каждого значения
- День недели, день года, номер недели по ISO и квартал
- Несуществующие даты вроде 31 февраля отклоняются, а не «переезжают»