con este código a continuación, obtengo lo que necesito en este formato AAAA-MM-DD, pero estoy intentando que DD sea -10 días a partir de la fecha actual. en este ejemplo espero tener 2022-04-04
var todayDate = new Date().toISOString().slice(0,10); console.log(todayDate)¿Alguien puede ayudarme a proporcionarme un código de trabajo? Gracias
Probar:
var tenDaysAgo = new Date(Date.now()- 1000 * 60 * 60 * 24 * 10) console.log(tenDaysAgo.toISOString().slice(0, 10))porque hay 1000 ms en un segundo, 60 segundos en un minuto, etc.
Slice es un método js que utiliza una matriz (String es una matriz de caracteres) y devuelve una copia superficial de la matriz seleccionada desde una posición inicial hasta una posición final.
Según la documentación
El método slice() devuelve una copia superficial de una parte de una matriz en un nuevo objeto de matriz seleccionado de principio a fin (no se incluye el final), donde el inicio y el final representan el índice de los elementos de esa matriz. La matriz original no se modificará.
Por ejemplo, "Hello, world".slice(0,5) es igual a "Hello" .
Si desea obtener una fecha 10 días antes, puede iniciar la fecha actual y luego tomar 10 días. Esto se puede hacer con los métodos setDate y getDate
const date = new Date() date.setDate(date.getDate() - 10) console.log(date.toISOString().slice(0,10))