🌐 ES

📅 Formateador de fecha ISO 8601

Escribe una fecha/hora en cualquier formato — ISO 8601, RFC 2822, una marca de tiempo Unix en segundos o milisegundos, y más — y se detectará automáticamente y se mostrará al mismo tiempo como ISO 8601, RFC 2822, marcas de tiempo Unix, hora local y más. Elige un desplazamiento UTC para calcular también la representación ISO 8601 de esa zona horaria.

Más herramientas para desarrolladores

GUÍA

Más información

01

1. ¿Qué es ISO 8601?

ISO 8601 es el formato estándar internacional para fechas y horas, por ejemplo "YYYY-MM-DDTHH:mm:ss.sssZ" — año-mes-día y hora:minuto:segundo separados por T, seguidos de UTC (Z) o un desplazamiento de zona horaria como +09:00. Se usa ampliamente en registros, respuestas de API y bases de datos porque no deja dudas para humanos y máquinas.

02

2. Marcas de tiempo Unix y cálculo del desplazamiento

Una marca de tiempo Unix cuenta segundos (o milisegundos) desde 1970-01-01T00:00:00Z. Esta herramienta detecta automáticamente una entrada puramente numérica por cantidad de dígitos: de 10 a 11 dígitos se interpreta como segundos, y 13 dígitos como milisegundos. Para mostrar ISO 8601 en un desplazamiento seleccionado, suma el desplazamiento (en minutos) al instante UTC, formatea el resultado como hora de reloj año-mes-día hora:minuto:segundo.milisegundos y añade el desplazamiento original como sufijo +HH:MM o -HH:MM; este cálculo sigue siendo correcto sin importar la zona horaria local del propio navegador.

03

3. RFC 2822 y fechas HTTP

RFC 2822 (común en encabezados de correo electrónico) y el encabezado HTTP Date usan un formato como "Tue, 15 Jan 2024 09:30:00 GMT". toUTCString() de JavaScript produce este formato, y Date.parse() puede leer tanto ese formato como ISO 8601, por lo que esta herramienta única puede convertir fechas que provienen de muchas fuentes distintas: archivos de registro, encabezados de API, volcados de base de datos y más.

Preguntas frecuentes

¿Qué formatos de fecha puedo introducir?
ISO 8601 (2024-01-15T09:30:00Z), RFC 2822 (Mon, 15 Jan 2024 09:30:00 GMT), marcas de tiempo Unix (un número en segundos o milisegundos) y la mayoría de cadenas de fecha comunes reconocidas por Date.parse() del navegador.
¿Cómo sabe la herramienta si una marca de tiempo Unix está en segundos o milisegundos?
Si la entrada es solo numérica, se clasifica por cantidad de dígitos: 10-11 dígitos se tratan como segundos (por ejemplo 1700000000), y 13 dígitos como milisegundos (por ejemplo 1700000000000).
¿Cómo se calcula el ISO 8601 para el desplazamiento seleccionado?
Al instante UTC se le suma el desplazamiento seleccionado (en minutos) para obtener la hora de reloj de ese desplazamiento, que luego se formatea como año-mes-día hora:minuto:segundo.milisegundos y se le añade el desplazamiento como +HH:MM o -HH:MM. El resultado es siempre el mismo sin importar el huso horario local de su navegador.
¿La fecha que introduzco se envía a un servidor?
No. Toda la conversión ocurre completamente en JavaScript de tu navegador y nunca se envía a un servidor.