Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

157
Views
El formato de fecha JS da -1 día

Quiero formatear mi fecha con la función toIsoString pero la función devuelve -1 día ¿cómo solucionarlo? el formato event.value es el martes Tue Apr 19 2022 00:00:00 GMT+0400 (Armenia Standard Time)

 console.log(new Date(event.value).toISOString().slice(0,10))

en la consola, obtengo este 2022-04-18 cómo pueden ver el resultado fue -1 día

 startDateChange(event: any): void{ this.firstDayOfMonth = event; console.log(new Date(event.value).toISOString().slice(0, 10)); }
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Esto se debe a la configuración de su zona horaria. El toISOString siempre devuelve +0000 mientras trabaja con +0400 en su zona horaria. Esto esencialmente se retira 4 horas dando como resultado el día anterior, 20:00 horas.

Puede intentar solucionar esto configurando el desplazamiento de la zona horaria en 0 agregando una Z a la fecha como se muestra en el segundo ejemplo.

El tercer ejemplo es una forma segura de hacerlo, pero debe anteponer el 0 si lo necesita.

Otra alternativa sería usar una biblioteca de fechas como Moment.js, aunque moment está en desuso (no sé con certeza cuál sería la mejor alternativa, eso depende de usted).

 // Your example (this might work for some people that are in the +0000 timezone) console.log(new Date('2021-03-03T00:00:00').toISOString().slice(0,10)); // Second example console.log(new Date('2021-03-03T00:00:00z').toISOString().slice(0,10)); // Third example const date = new Date('2021-03-03T00:00:00'); const year = date.getFullYear(); const month = date.getMonth() + 1; const day = date.getDate(); console.log(`${year}-${month}-${day}`);

about 4 years ago · Juan Pablo Isaza Report

0

Puede usar https://day.js.org/

Código:

 const dateString = 'Tue Apr 19 2022 00:00:00 GMT+0400 (Armenia Standard Time)' const date1 = dayjs(dateString).format('YYYY-MM-DD') console.log(date1) const date2 = dayjs(dateString).format('YYYY-M-D') console.log(date2)
 <script src="https://cdnjs.cloudflare.com/ajax/libs/dayjs/1.11.0/dayjs.min.js"></script>

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!