Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

123
Vistas
La conversión de cadena a objeto de fecha no funciona correctamente

Tengo una matriz de objetos como este:

 const days = [ { _id: 12312323 date : '30/12/2021' dateStatus : 'presence' }, ... ]

y quiero convertir la propiedad de fecha de cadena a objeto de fecha de esta manera:

 const convertToDateObject = (dateString: string): Date => { const dateParts: any[] = dateString.split("/"); return new Date(+dateParts[2], dateParts[1] - 1, +dateParts[0]); }; for (let i = 0; i < days.length; i++) { const d = days[i].date as string; days[i].date = convertToDateObject(d); }

Pero esto devuelve esto convierte el valor de fecha a este formato 'Wed Dec 01 2021 00:00:00 GMT+0100 (Central European Standard Time)' en lugar de este formato 2021-11-30T23:00:00.000Z **.

De hecho, estoy perdido porque cuando el objeto dado no tiene la propiedad _id , el formato funciona correctamente y devuelve el formato deseado, pero cuando tiene la propiedad _id , me devuelve otro formato. ¿Por qué?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Pero esto devuelve esto convierte el valor de la fecha a este formato...

No, no lo hace. Le da un objeto Date , que no tiene "formato". Puede obtener la información de fecha/hora de ese objeto en hora local (aparentemente GMT+0100 donde se encuentra) o en UTC, según los métodos que utilice. Para obtener información del objeto en hora local, usa getHours , getMinutes , getSeconds (etc.), toString , toLocaleString y similares. Para obtener información del objeto en UTC, utilice getUTCHours , getUTCMinutes , getUTCSeconds (etc.), toUTCString y similares.

El constructor que está utilizando funciona en hora local. Es decir, construye un objeto Date para la medianoche (porque no está proporcionando horas, minutos, segundos o milisegundos) hora local en su zona horaria (porque ha usado new Date ). Si desea obtener la medianoche UTC, puede hacer new Date(Date.UTC(+dateParts[2], dateParts[1] - 1, +dateParts[0])); en cambio. La única diferencia es el momento en el tiempo que representa el objeto Date (la fecha dada a la medianoche hora local frente a la fecha dada a la medianoche UTC).

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda