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

178
Vistas
¿Cómo puedo combinar la salida de un selector de fecha y un selector de hora para hacer una sola fecha.toISOString en JavaScript?

Tengo un selector de fecha y un selector de tiempo, y estoy tratando de descubrir cómo puedo combinar sus salidas para hacer una sola ISOString para poder usarla con la API del calendario de Google. Esto es lo que he intentado:

 //date = 2022-05-18 //time = 14:22 const apptdate = new Date(date) const timeSplit = time.split(':') apptDate.setHours(timeSplit[0]) apptDate.setMinutes(timeSplit[1])

Lo que noto es cuando consola.log (fecha de cita) este es el resultado que obtengo: 2022-05-17T18: 22: 00.000Z

No estoy seguro de por qué cambia el día del 18 de mayo al 17 de mayo y la hora de las 14:22 a las 18:22. ¿Alguien tiene una solución para esto? O incluso una forma completamente diferente de combinar la fecha y la hora en una cadena (aparte de usar un formato de entrada local de fecha y hora, quiero mantener la fecha y la hora separadas en mi base de datos).

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

0

"2022-05-18" se analiza como UTC pero apptDate.setHours(timeSplit[0]) establece la hora local. Entonces, si el host tiene una compensación negativa, la fecha local es el 17 de mayo y la hora se establece en la hora local del 17 de mayo, no en la hora UTC del 18 de mayo.

En su lugar, use setUTCHours y setUTCMinutes .

 let date = '2022-05-18'; let time = '14:22'; let apptDate = new Date(date); let timeSplit = time.split(':'); apptDate.setUTCHours(timeSplit[0]); apptDate.setUTCMinutes(timeSplit[1]); // 2022-05-18T14:22:00.000Z console.log(apptDate.toISOString());

PD. También hubo un error tipográfico: let apptdate luego apptDate .

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