¿Cómo funciona la internacionalización en JavaScript?

La internacionalización (también conocida como i18n) es el método de crear o reelaborar productos y servicios para que simplemente se adapten a idiomas y culturas nativos específicos. La localización (también conocida como L10n) es el método de adaptar el código informático internacionalizado para una región o idioma en particular. En otras palabras, la internacionalización es el método de adaptar el código de su computadora para admitir múltiples culturas (formato de moneda, formato de fecha, etc.), mientras que la localización es el método de implementar una o más culturas.

Estos dos procesos a veces son adoptados por empresas que tienen intereses en varios países, pero también pueden ser útiles para un desarrollador que trabaja en su propio sitio web. como ejemplo, como puede reconocer, soy italiano y tengo un sitio web. Mi sitio web se presenta en inglés, sin embargo, me encargaría de internacionalizarlo y luego localizarlo al italiano. esto a menudo es útil para las personas que son hablantes nativos de italiano y no conocen bien el idioma inglés.

Los desarrolladores suponen que i18n se trata de traducciones a idiomas distintos del inglés. Ese i18n simplemente se requiere para aumentar la aplicación actual a múltiples países o mercados. Continuamente trato de argumentar que i18n se refiere a «hablar» normalmente. cada aplicación, con algún propósito, necesita “hablar” con sus usuarios. para hablar con los usuarios, la aplicación puede necesitar soporte de pluralización, inflexión de género, información de fecha, información de variedad e información de moneda. Incluso en inglés, sería difícil inducir a que esto se hiciera correctamente.

Globalize y la API de internacionalización de JavaScript
Para algunos de ustedes, esto podría ser una sorpresa, sin embargo, JavaScript tiene soporte nativo para la acción grupal en forma de API de acción grupal (también conocida como ECMA-402).
El objeto Intl es un objeto disponible en el objeto de ventana que actúa como un espacio de nombres para la API de internacionalización.
Esta API actualmente proporciona formas de formatear números y fechas y comparar strings en un idioma específico.

Ahora que conoce la existencia de la API de internacionalización, podría pensar que Globalize la usa detrás de escena.
Este enfoque sin duda provocaría un mayor rendimiento del formato de fecha y variedad.
Sin embargo, debido a que el soporte es bajo y muy inconsistente entre los navegadores, la biblioteca no lo usa.

Ahora quiero darle una muestra de la API de internacionalización.

Dar formato a una fecha

var date = new Date(2019, 2, 22);
  
// "22/02/2019"
console.log(new Intl.DateTimeFormat('it-IT').format(date));
  
// "02/22/2019"
console.log(new Intl.DateTimeFormat('en-US').format(date));
  
// "22/02/2019"
console.log(new Intl.DateTimeFormat('en-GB').format(date));

Producción:

22/3/2019
3/22/2019
22/03/2019

En este ejemplo, uso el generador DateTimeFormat para hacer que un formateador de fecha de reemplazo maltrate el lugar requerido ( «it-IT» , «en-US» y «en-GB» ).
Luego, invoco la metodología de formato para formatear el objeto de fecha.

Dar formato a un número

var number = 2153.93;
  
// "2.153, 88"
console.log(new Intl.NumberFormat('it-IT').format(number));
  
// "2, 153.88"
console.log(new Intl.NumberFormat('us-US').format(number));
  
// "2, 153.88"
console.log(new Intl.NumberFormat('en-GB').format(number));

Producción:

2.153,93
2,153.93
2,153.93

Conclusión

En este artículo, discutí qué es la internacionalización y por qué es importante para expandir el mercado de un producto. Les presenté brevemente la API de internacionalización mencionando algunas funciones compatibles y luego mostré algunos ejemplos de su uso.

Navegadores compatibles: los navegadores compatibles con la API de internacionalización se enumeran a continuación:

  • Google Chrome
  • explorador de Internet
  • Firefox
  • safari de manzana
  • Ópera

Publicación traducida automáticamente

Artículo escrito por 08shubhambhandari08 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *