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

354
Views
Date.toLocaleString('en-US', {hour12: false}) proporciona la medianoche como 24

El código

 const d = new Date('2021-08-04T18:33:43.0000000Z') .toLocaleString('en-US', {hour12: false, timeZone: "Asia/Kolkata"}) console.log(d)

está proporcionando un resultado como "8/5/2021, 24:03:43" .
Aquí '24' hr debe mostrarse como '00' hr. ¿Es este un problema de la función toLocaleString ?

Necesito usar la sintaxis anterior porque el formato de fecha debe ser el formato de fecha del idioma del navegador y la hora debe ser el formato de 24 horas.

Para otro idioma funciona bien, por ejemplo GB

 const d = new Date('2021-08-04T18:33:43.0000000Z') .toLocaleString('en-GB', {hour12: false, timeZone: "Asia/Kolkata"}) console.log(d)

proporcionará el resultado como "05/08/2021, 00:03:43" .

Entonces, ¿alguien puede ayudarme a obtener el formato correcto de 24 horas usando la función toLocaleString ?

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Parece ser un error en las especificaciones de INTL ECMA, que debería corregirse en ECMA2021.

Puede ser un problema exclusivo de Chromium

Mientras tanto, puede agregar hourCycle: 'h23' a sus parámetros para forzar el 00, ya que h24 es el valor predeterminado para ALGUNAS configuraciones regionales cuando se especifica hour12: false

https://github.com/moment/luxon/issues/726

La causa raíz de este problema proviene de este cambio en Chromium . Introduce soporte para la opción hourCycle en Intl.DateTimeFormat.
Los cuatro valores admitidos son "h11", "h12", "h23" o "h24" ( MDN ) y la diferencia entre h23 y h24 es precisamente si la medianoche debe mostrarse como 00 (h23) o 24 (h24)

¿Cuáles son las diferencias entre las opciones de hourCycle en Date.prototype.toLocaleTimeString()

about 4 years ago · Juan Pablo Isaza Report

0

Tienes que usar hourCycle: 'h23' para forzar el formato de 0-23 horas.

 > new Date('2021-08-04T18:33:43.0Z').toLocaleString('en-US', { hourCycle: 'h23'}) "8/5/2021, 00:33:43"
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!