Introducción
En este laboratorio, profundizaremos en la programación de JavaScript y crearemos una función llamada daysAgo. Esta función toma un número como entrada y calcula la fecha que fue hace n días a partir de hoy. Utilizaremos el constructor Date, junto con varios métodos como Math.abs() y Date.prototype.setDate(), para completar esta tarea y devolver el resultado como una cadena en el formato yyyy-mm-dd. Al final de este laboratorio, habrás adquirido una comprensión más profunda del trabajo con fechas en JavaScript.
Función de JavaScript para calcular días atrás
Aquí hay una función de JavaScript que calcula la fecha de hace n días a partir de hoy y la devuelve como una cadena en el formato yyyy-mm-dd:
const daysAgo = (n) => {
const today = new Date();
const daysAgoDate = new Date(today.setDate(today.getDate() - Math.abs(n)));
return daysAgoDate.toISOString().split("T")[0];
};
Así es como funciona:
- El constructor
Datese utiliza para obtener la fecha actual. - La función
Math.abs()se utiliza para asegurarse de que el número de días sea positivo. - La función
Date.prototype.getDate()se utiliza para obtener el día del mes de la fecha actual. - La función
Date.prototype.setDate()se utiliza para actualizar la fecha en consecuencia. - La fecha resultante se devuelve como una cadena en el formato
yyyy-mm-ddutilizando la funciónDate.prototype.toISOString().
Uso de ejemplo:
daysAgo(20); // "2020-09-16" (si la fecha actual es 2020-10-06)
Resumen
¡Felicitaciones! Has completado el laboratorio de Días atrás. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.