Restar días a una fecha con Moment.js es muy sencillo usando el método .subtract()
. Este método permite restar días, meses, años, y otras unidades de tiempo a cualquier fecha.
Para restar un número específico de días a una fecha, usa el método .subtract()
indicando el número de días como primer parámetro y la unidad de tiempo "days"
o "d"
como segundo parámetro.
// Crear una fecha específica
const fecha = moment("2024-11-12");
// Restar 5 días a la fecha
const fechaRestada = fecha.subtract(5, "days");
console.log(fechaRestada.format("YYYY-MM-DD")); // Ejemplo de salida: "2024-11-07"
También puedes restar días a la fecha actual directamente:
// Restar 7 días a la fecha actual
const fechaActualMenos7Dias = moment().subtract(7, "days");
console.log(fechaActualMenos7Dias.format("YYYY-MM-DD")); // Ejemplo de salida: "2024-11-05"
1. Restar meses y días a una fecha:
const fechaRestadaMesesDias = moment("2024-11-12").subtract(2, "months").subtract(10, "days");
console.log(fechaRestadaMesesDias.format("YYYY-MM-DD")); // Ejemplo de salida: "2024-09-02"
2. Restar un año a la fecha actual y formatearla:
const fechaActualMenosUnAño = moment().subtract(1, "year");
console.log(fechaActualMenosUnAño.format("YYYY-MM-DD")); // Ejemplo de salida: "2023-11-12"
3. Restar días sin modificar la fecha original:
const fechaOriginal = moment("2024-11-12");
const nuevaFecha = fechaOriginal.clone().subtract(15, "days");
console.log(nuevaFecha.format("YYYY-MM-DD")); // Ejemplo de salida: "2024-10-28"
console.log(fechaOriginal.format("YYYY-MM-DD")); // Salida: "2024-11-12" (sin cambios)
Para más información sobre el uso de .subtract()
en Moment.js, consulta la documentación oficial de Moment.js.
Jorge García
Fullstack developer