Что такое метка времени в миллисекундах эпохи?
Unix-метка времени показывает, сколько времени прошло с момента 1970-01-01 00:00:00 UTC — этот момент называют «эпохой» (epoch). Многие языки программирования и API (метод Date.now() в JavaScript, System.currentTimeMillis() в Java, а также множество JSON-ответов) хранят это значение в миллисекундах, а не в секундах. Наш конвертер превращает это «сырое» число в понятную дату и время по UTC.
Как пользоваться конвертером
Вставьте или введите метку времени в миллисекундах в поле ввода и нажмите кнопку. Инструмент делит значение на 1000, чтобы получить целое число секунд, а затем откладывает эти секунды по календарю, начиная от эпохи. На выходе вы получаете полную строку ISO 8601 (например, 2023-11-14T22:13:20Z), а также разбивку на год, месяц, день, часы, минуты и секунды — всё в UTC, поэтому ваш местный часовой пояс на результат не влияет.
Как работает формула
Преобразование состоит из двух простых шагов. Сначала
$$\text{seconds} = \left\lfloor \frac{\text{ms}}{1000} \right\rfloor$$отбрасывает остаток меньше секунды. Затем
$$\text{date} = \text{epoch} + \text{seconds}$$прибавляет эти секунды к полуночи 1 января 1970 года. В общем виде:
$$\text{Date}_{\text{UTC}} = \text{Epoch}_{1970}\;+\;\frac{\text{Epoch Time (ms)}}{1000}\ \text{seconds}$$Високосные годы, разную длину месяцев и прочие нюансы календарь обрабатывает автоматически.
Разбор примера
Возьмём 1 700 000 000 000 мс. После деления на 1000 получаем 1 700 000 000 секунд:
$$\left\lfloor \frac{1\,700\,000\,000\,000}{1000} \right\rfloor = 1\,700\,000\,000\ \text{seconds}$$Прибавив их к эпохе, попадаем в момент 2023-11-14T22:13:20Z — это 14 ноября 2023 года, 22:13:20 по UTC.
Частые вопросы
Результат показан в моём местном времени? Нет. Чтобы избежать путаницы, результат всегда выводится в UTC (Всемирное координированное время). Если нужно местное время, прибавьте смещение своего часового пояса.
А если у меня секунды, а не миллисекунды? Умножьте метку в секундах на 1000, прежде чем вводить её, — или просто допишите три нуля.
Почему метка иногда показывает дату из далёкого будущего или 1970 год? Если значение в секундах ввести как миллисекунды, дата окажется около 1970 года; а если значение уже в миллисекундах повторно дополнить нулями, оно улетит в далёкое будущее. Всегда проверяйте, что единица измерения — именно миллисекунды.