Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

222
Visualizações
¿Cómo convierto UTC DateTime a DateTime local sin terminar con un formato diferente?

Tengo valores DateTime específicos en este formato ' YYYY-MM-DDThh:mm:ss.ms ' (por ejemplo, ' 2022-05-10T13:44:00.0000000 ') y necesito convertirlos a DateTime local (que es UTC+2 para mí) sin cambiar el formato (entonces ' 2022-05-10T15:44:00.0000000 ' es el resultado deseado (aún mejor sería sin los milisegundos, pero eso sería solo la guinda del pastel)).

He buscado por todas partes, pero cada supuesta solución que encuentro cambia el formato o no cambia la hora en absoluto.

Esto es lo que tengo ahora, convierte con éxito la hora a la hora local, pero al ejecutarlo a través de .toISOString() para recuperar el formato original, lo vuelve a convertir a la hora UTC.

 //Input: event.start.dateTime = '2022-05-10T13:44:00.0000000' let startDateTime = new Date(event.start.dateTime); startDateTime.setMinutes(startDateTime.getMinutes() - startDateTime.getTimezoneOffset()); document.getElementById('ev-start').value = startDateTime.toISOString().slice(0,16); //Output: '2022-05-10T13:44:00.000Z'
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

No pude encontrar una solución limpia y satisfactoria, así que decidí formatear yo mismo. Esto es lo que terminé con:

Entrada: ' 2022-05-10T13:44:00.0000000 '

 let startDateTime = new Date(event.start.dateTime); startDateTime.setMinutes(startDateTime.getMinutes() - startDateTime.getTimezoneOffset()); let localStartDateTime = startDateTime.getFullYear() + "-" + (startDateTime.getMonth() + 1).toString().padStart(2, '0') + "-" + startDateTime.getDate().toString().padStart(2, '0') + "T" + startDateTime.getHours().toString().padStart(2, '0') + ":" + startDateTime.getMinutes().toString().padStart(2, '0') + ":" + startDateTime.getSeconds().toString().padStart(2, '0'); document.getElementById('ev-start').value = localStartDateTime;

Salida: ' 2022-05-10T15:44:00 '

about 4 years ago · Juan Pablo Isaza Relatório

0

Espero que esto ayude

 const startDateTime = new Date('2022-05-10T13:44:00.0000000'); const outputDateTime = new Date(startDateTime.toString()).toISOString().slice(0, 19); //document.getElementById('ev-start').value = outputDateTime console.log(outputDateTime);

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda