JavaScript Date Objects

JavaScript Date Objects

Contenido original de W3Schools


Los objetos de fecha de JavaScript nos permiten trabajar con fechas:


Ejemplo:

const d = new Date();

Ver ejemplo

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

Ver ejemplo


Nota

Los objetos de fecha son estáticos. El "reloj" no está "corriendo".

El reloj de la computadora corre, los objetos de fecha no.


Salida de fechas JavaScript

De forma predeterminada, JavaScript utilizará la zona horaria del navegador y mostrará una fecha como una cadena de texto completo:

Aprenderás mucho más sobre cómo mostrar fechas más adelante en este tutorial.


Crear objetos de fecha

Los objetos de fecha se crean con el constructor new Date().

Hay 9 formas de crear un nuevo objeto de fecha:

new Date()
new Date(date string)

new Date(year,month)
new Date(year,month,day)
new Date(year,month,day,hours)
new Date(year,month,day,hours,minutes)
new Date(year,month,day,hours,minutes,seconds)
new Date(year,month,day,hours,minutes,seconds,ms)

new Date(milliseconds)

JavaScript new Date()

new Date() crea un objeto de fecha con la fecha y hora actuales:

Ejemplo:

const d = new Date();

Ver ejemplo


new Date(*date string*)

new Date(*date string*) crea un objeto de fecha a partir de una cadena de fecha:

Ejemplo:

const d = new Date("October 13, 2014 11:13:00");

Ver ejemplo

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

Ver ejemplo

Los formatos de cadenas de fecha se describen en el siguiente capítulo.


new Date(year, month, ...)

new Date(*year, month, ...*) crea un objeto de fecha con una fecha y hora especificadas.

7 números especifican año, mes, día, hora, minuto, segundo y milisegundo (en ese orden):

Ejemplo:

const d = new Date(2018, 11, 24, 10, 33, 30, 0);

Ver ejemplo


Nota

JavaScript cuenta los meses del 0 al 11:

Enero = 0.

Diciembre = 11.

Especificar un mes superior a 11 no generará un error, pero agregará el desbordamiento al año siguiente:

Especificando:

const d = new Date(2018, 15, 24, 10, 33, 30);

Ver ejemplo

Es lo mismo que:

const d = new Date(2019, 3, 24, 10, 33, 30);

Ver ejemplo

Especificar un día superior al máximo no generará un error, pero agregará el desbordamiento al mes siguiente:

Especificando:

const d = new Date(2018, 5, 35, 10, 33, 30);

Es lo mismo que:

const d = new Date(2018, 6, 5, 10, 33, 30);

Ver ejemplo


Usando 6, 4, 3 o 2 números

6 números especifican año, mes, día, hora, minuto, segundo:

Ejemplo:

const d = new Date(2018, 11, 24, 10, 33, 30);

Ver ejemplo

5 números especifican año, mes, día, hora y minuto:

Ejemplo:

const d = new Date(2018, 11, 24, 10, 33);

Ver ejemplo

4 números especifican año, mes, día y hora:

Ejemplo:

const d = new Date(2018, 11, 24, 10);

Ver ejemplo

3 números especifican año, mes y día:

Ejemplo:

const d = new Date(2018, 11, 24);

Ver ejemplo

2 números especifican año y mes:

Ejemplo:

const d = new Date(2018, 11);

Ver ejemplo

No puedes omitir el mes. Si proporcionas solo un parámetro, se tratará como milisegundos.

Ejemplo:

const d = new Date(2018);

Ver ejemplo


Siglo anterior

Los años de uno y dos dígitos se interpretarán como 19xx:

Ejemplo:

const d = new Date(99, 11, 24);

Ver ejemplo

Ejemplo:

const d = new Date(9, 11, 24);

Ver ejemplo


JavaScript almacena fechas como milisegundos

JavaScript almacena fechas en milisegundos desde el 1 de enero de 1970.

La hora cero es el 1 de enero de 1970 a las 00:00:00 UTC.

Un día (24 horas) son 86.400.000 milisegundos.

Ahora el tiempo es: 1696469896797 milisegundos después del 1 de enero de 1970


new Date(*milliseconds*)

new Date(*milliseconds*) crea un nuevo objeto de fecha como milisegundos más el tiempo cero:

Ejemplo:

01 de enero de 1970 más 100 000 000 000 milisegundos es:

const d = new Date(100000000000);

Ver ejemplo

01 de enero de 1970 menos 100 000 000 000 milisegundos es:

const d = new Date(-100000000000);

Ver ejemplo

01 de enero de 1970 más 24 horas es:

const d = new Date(24 * 60 * 60 * 1000);
// or
const d = new Date(86400000);

Ver ejemplo

01 de enero de 1970 más 0 milisegundos es:

const d = new Date(0);

Ver ejemplo


Métodos de fecha

Cuando se crea un objeto de fecha, varios métodos le permiten operar con él.

Los métodos de fecha le permiten obtener y configurar el año, mes, día, hora, minuto, segundo y milisegundo de los objetos de fecha, utilizando la hora local o la hora UTC (universal o GMT).

Los métodos de fecha y las zonas horarias se tratan en los siguientes capítulos.


Visualización de fechas

JavaScript (de forma predeterminada) generará fechas utilizando el método toString(). Esta es una representación de cadena de la fecha, incluida la zona horaria. El formato se especifica en la especificación ECMAScript:

Ejemplo:

Wed Oct 04 2023 20:38:16 GMT-0500 (hora estándar de Colombia)

Ver ejemplo

Cuando muestra un objeto de fecha en HTML, se convierte automáticamente en una cadena, con el método toString().

Ejemplo:

const d = new Date();
d.toString();

Ver ejemplo

El método toDateString() convierte una fecha a un formato más legible:

Ejemplo:

const d = new Date();
d.toDateString();

Ver ejemplo

El método toUTCString() convierte una fecha en una cadena usando el estándar UTC:

Ejemplo:

const d = new Date();
d.toUTCString();

Ver ejemplo

El método toISOString() convierte una fecha en una cadena usando el estándar ISO:

Ejemplo:

const d = new Date();
d.toISOString();

Ver ejemplo


Referencia completa de fechas JavaScript

Para obtener una referencia completa de fechas, visite:

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!