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

224
Visualizações
¿Cómo obtener la hora y los minutos como valores numéricos (no como cadena) en la zona horaria local del objeto de fecha de Javascript?

Tengo una Fecha en formato UTC, y quiero obtener la hora y los minutos, pero en la zona horaria local en la que se ejecuta el navegador, y sin que yo especifique la zona horaria explícitamente, solo uso el valor predeterminado que usa el navegador. Sé que puedo obtener toda la hora de la fecha en la zona local como una cadena usando Date.toLocaleTimeString() o Date.toString() pero no quiero tener que analizar la hora y el minuto.

También puedo obtener la hora y los minutos numéricos de una fecha usando Date.getHours() y getMinutes(), pero esto no estará en la zona horaria local, ¿o sí? (irónicamente, mi zona horaria local es UTC, así que no estoy seguro de cómo probar)

Gracias

EDITAR: respondiendo a mi propia pregunta, ver más abajo

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

toLocalstring y luego convertiría la cadena en número.

 function getNumericHourAndMinute() { const tz = Intl.DateTimeFormat().resolvedOptions().timeZone; const d = new Date().toLocaleString('en-US', { timeZone: tz, timeStyle: 'short', hour12: false }); const p = d.split(':'); return [Number(p[0]), Number(p[1])]; } console.log(getNumericHourAndMinute());

about 4 years ago · Juan Pablo Isaza Relatório

0

Puede usar Date.prototype.getHours y Date.prototype.getMinutes para obtener las horas y los minutos de una fecha de cadena como: 2022-01-08 14:00:00.

Usa este código:

 var d = new Date(/* A example date: '2022-01-08 14:00:00'*/); var h = d.getHours(); var m = d.getMinutes(); // Whit the example date you get in the console: 'Time: 14:00.' console.log('Time: '+ h + ' : ' + m + '.');
about 4 years ago · Juan Pablo Isaza Relatório

0

Entonces, un objeto Date de Javascript aparentemente no está en una zona horaria como tal, es básicamente la cantidad de milisegundos desde la época de Unix según Date.now() https://developer.mozilla.org/en-US/docs/Web/ JavaScript/Referencia/Global_Objects/Fecha/ahora

De lo que no me di cuenta hasta que revisé los documentos ;-) fue que Date.getHours() devuelve el valor numérico de las horas según la hora local (es decir, la hora en la zona horaria del dispositivo que ejecuta el código) y no la hora UTC (que estaba tratando de evitar). https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getHours

Así que Date.hours() me da exactamente lo que quiero (si por alguna razón quisiera UTC, podría usar Date.getUTCHours() https://developer.mozilla.org/en-US/docs/Web/JavaScript/ Referencia/Global_Objects/Date/getUTCHours

Entonces puedo usar Date.getMinutes() para obtener el valor de los minutos de la Fecha y eso no se ve afectado por la zona horaria de todos modos, así que todo bien :)

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