Skip to main content

Clase Date en Javascript/NodeJS

La clase Date en javascript nos permite gestionar fechas a través del formato ISO 8601 y diversos métodos para la manipulación de las diferentes partes de una fecha completa.

Ahora bien, el formato ISO 8601 es un estándar ampliamente utilizado para representar fechas y horas de una forma legible y bien definida.

En este formato específico:

«2023-05-20» representa la fecha en formato «año-mes-día».

«T» es simplemente un separador entre la parte de la fecha y la parte de la hora.

«13:28:57.477» representa la hora en formato «horas:minutos:segundos.milisegundos».

«Z» al final indica que la fecha y la hora están en el huso horario UTC.

A través de la clase Date podemos acceder a los diversos métodos:

const fecha = new Date();
const año = fecha.getFullYear(); // Obtiene el año (ejemplo: 2023)
const mes = fecha.getMonth(); // Obtiene el mes (0 para enero, 11 para diciembre)
const dia = fecha.getDate(); // Obtiene el día del mes (1-31)
const hora = fecha.getHours(); // Obtiene la hora (0-23)
const minutos = fecha.getMinutes(); // Obtiene los minutos (0-59)
const segundos = fecha.getSeconds(); // Obtiene los segundos (0-59)

Por lo que a continuación presentaremos un segmento de código que permita entender como generar un formato de tipo yyyy-mm-dd:

const formatDate = (d = null) => {
    const current_date = new Date(d);

    const year = current_date.getFullYear();
    const month = String(current_date.getMonth() + 1).padStart(2, '0');
    const day = String(current_date.getDate()).padStart(2, '0');

    const formatted_date = year+"-"+month+"-"+day;

    return formatted_date;
}

const resp = formatDate("2020-04-17T13:28:57.477Z");
console.log("Fecha formateada: ", resp);

En este ejemplo, getFullYear() devuelve el año actual, getMonth() devuelve el mes actual (teniendo en cuenta que los meses empiezan en 0) y getDate() devuelve el día del mes actual. Luego, utilizamos String() para convertir el mes y el día en cadenas y padStart() para asegurarnos de que tengan dos dígitos, agregando un cero inicial si es necesario. Por último, concatenamos los componentes de la fecha utilizando guiones para obtener el formato «yyyy-mm-dd».

× ¿En qué podemos ayudarte?