JavaScript Date Formats

JavaScript Date Formats

Contenido original de W3Schools


Entrada de fechas JavaScript

Generalmente existen 3 tipos de formatos de entrada de fechas en JavaScript:

TipoEjemplo
Fecha ISO"2015-03-25" (Estándar internacional)
Fecha corta"03/25/2015"
Fecha larga"Mar 25 2015" o "25 Mar 2015"

El formato ISO sigue un estándar estricto en JavaScript.

Los otros formatos no están tan bien definidos y pueden ser específicos del navegador.


Salida de fechas JavaScript

Independientemente del formato de entrada, JavaScript generará (de forma predeterminada) las fechas en formato de cadena de texto completo:

Sat Oct 07 2023 17:20:38 GMT-0500 (hora estándar de Colombia)

Ver ejemplo


Fechas ISO JavaScript

ISO 8601 es el estándar internacional para la representación de fechas y horas.

La sintaxis ISO 8601 (AAAA-MM-DD) también es el formato de fecha de JavaScript preferido:

Ejemplo (fecha completa):

const d = new Date("2015-03-25");

Ver ejemplo

La fecha calculada será relativa a su zona horaria. Dependiendo de su zona horaria, el resultado anterior variará entre el 24 y el 25 de marzo.


Fechas ISO (año y mes)

Las fechas ISO se pueden escribir sin especificar el día (AAAA-MM):

Ejemplo:

const d = new Date("2015-03");

Ver ejemplo

Las zonas horarias variarán el resultado anterior entre el 28 de febrero y el 01 de marzo.


Fechas ISO (solo año)

Las fechas ISO se pueden escribir sin mes ni día (AAAA):

Ejemplo:

const d = new Date("2015");

Ver ejemplo

Las zonas horarias variarán el resultado anterior entre el 31 de diciembre de 2014 y el 1 de enero de 2015.


Fechas ISO (Fecha-Hora)

Las fechas ISO se pueden escribir añadiendo horas, minutos y segundos (AAAA-MM-DDTHH:MM:SSZ):

Ejemplo:

const d = new Date("2015-03-25T12:00:00Z");

Ver ejemplo

La fecha y la hora están separadas por T mayúscula.

La hora UTC se define con una letra mayúscula Z.

Si desea modificar la hora relativa a UTC, elimine la Z y agregue +HH:MM o -HH:MM en su lugar:

Ejemplo:

const d = new Date("2015-03-25T12:00:00-06:30");

Ver ejemplo

UTC (hora universal coordinada) es lo mismo que GMT (hora media de Greenwich).

Omitir T o Z en una cadena de fecha y hora puede dar resultados diferentes en diferentes navegadores.


Zonas horarias

Al establecer una fecha, sin especificar la zona horaria, JavaScript utilizará la zona horaria del navegador.

Al obtener una fecha, sin especificar la zona horaria, el resultado se convierte a la zona horaria del navegador.

En otras palabras: si se crea una fecha/hora en GMT (hora media de Greenwich), la fecha/hora se convertirá a CDT (hora de verano del centro de EE. UU.) si un usuario navega desde el centro de EE. UU.


Fechas cortas de JavaScript.

Las fechas cortas se escriben con una sintaxis "MM/DD/AAAA" como esta:

Ejemplo:

const d = new Date("03/25/2015");

Ver ejemplo


ADVERTENCIAS

En algunos navegadores, los meses o días sin ceros a la izquierda pueden producir un error:

const d = new Date("2015-3-25");

El comportamiento de "AAAA/MM/DD" no está definido. Algunos navegadores intentarán adivinar el formato. Algunos devolverán NaN.

const d = new Date("2015/03/25");

El comportamiento de "DD-MM-AAAA" tampoco está definido. Algunos navegadores intentarán adivinar el formato. Algunos devolverán NaN.

const d = new Date("25-03-2015");

Fechas largas de JavaScript.

Las fechas largas suelen escribirse con una sintaxis "MMM DD AAAA" como esta:

Ejemplo:

const d = new Date("Mar 25 2015");

Ver ejemplo

El mes y el día pueden estar en cualquier orden:

Ejemplo:

const d = new Date("25 Mar 2015");

Ver ejemplo

Y el mes se puede escribir completo (enero) o abreviado (enero):

const d = new Date("January 25 2015");

Ver ejemplo

const d = new Date("Jan 25 2015");

Ver ejemplo

Se ignoran las comas. Los nombres no distinguen entre mayúsculas y minúsculas:

Ejemplo:

const d = new Date("JANUARY, 25, 2015");

Ver ejemplo


Entrada de fecha: análisis de fechas

Si tiene una cadena de fecha válida, puede usar el método Date.parse() para convertirla a milisegundos.

Date.parse() devuelve el número de milisegundos entre la fecha y el 1 de enero de 1970:

Ejemplo:

let msec = Date.parse("March 21, 2012");

Ver ejemplo

Luego puedes usar la cantidad de milisegundos para convertirlo en un objeto de fecha:

Ejemplo:

let msec = Date.parse("March 21, 2012");
const d = new Date(msec);

Ver ejemplo


Referencia completa de fechas en JavaScript

Para obtener una referencia completa de fechas, visite nuestro:

Referencia completa de fechas de JavaScript.

La referencia contiene descripciones y ejemplos de todas las propiedades y métodos de Date.


Traducido con 💚 desde W3Schools.com

Did you find this article valuable?

Support Santos Romero by becoming a sponsor. Any amount is appreciated!