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

118
Vistas
Inconsistencia de Intl.DateTimeFormat en Chrome en Mac

Tengo un problema bastante extraño con Intl.DateTimeFormat . Para empezar, la documentación para esto en MDN dice que proporcionar la cadena 'predeterminada' como primer argumento del constructor (en lugar de un código de idioma específico) hará que use la configuración regional predeterminada del navegador:

 // to specify options but use the browser's default locale, use 'default' console.log(new Intl.DateTimeFormat('default', options).format(date));

Hasta aquí todo bien. Hacer console.log(navigator.languages) en Chrome produce lo siguiente:

 ['en-US', 'en', 'bs', 'hr', 'sr']

MDN dice que estos están en orden de preferencia, con el idioma preferido en primer lugar. Por lo tanto, uno supondría que trataría a 'en-US' como mi configuración regional predeterminada. Sin embargo, este no parece ser el caso. Si hago dos de estos formateadores así:

 const defaultTimeFormatter = new Intl.DateTimeFormat('default'); const enUsTimeFormatter = new Intl.DateTimeFormat('en-US');

y luego llamo a sus métodos de formato, obtengo los siguientes resultados:

 defaultTimeFormatter.format(new Date()); // 20/07/2022 enUsTimeFormatter.format(new Date()); // 7/20/2022

defaultTimeFormatter me está dando el formato de fecha que realmente se usa en mi país, pero esa no es la configuración regional del navegador. Claramente, está obteniendo este valor 'predeterminado' en otro lugar, pero no encontré ninguna forma de acceder a ese valor porque toda la documentación dice que navigator.language es la forma de hacerlo.

Todo esto ha sido en Chrome en una Mac. En Chrome en Windows 11, defaultTimeFormatter y enUsTimeFormatter dan el mismo resultado, como también lo hacen en Firefox en cualquier plataforma.

Estoy perplejo en cuanto a cómo Chrome en Mac decide esta configuración regional 'predeterminada'. ¿Podría estar sacando algo del nivel del sistema operativo? Pero entonces, ¿por qué Chrome en Windows no se comportaría igual? Cualquier ayuda sería muy apreciada.

about 4 years ago · Santiago Trujillo
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