Rodrigo Borrego Bernabé - Software Developer




Incluir internacionalización (i18n) en javascript

Category : Programación · by Jun 24th, 2010

Comparto con vosotros una manera simple de incluir internacionalización en tu código javascript.

El motor

Basta con crear un fichero javascript i18n.js por ejemplo:

function _(s) {
 if (typeof(i18n)!='undefined' && i18n[s]) {
 return i18n[s];
 }
 return s;
}

Los datos

Y luego crear un fichero por idioma messages.es.js con las cadenas en el idioma base y su consiguiente traducción:

var i18n = {
 "First String": "Primera cadena",
 "Another piece of text": "Otro texto"
 };

Configurando

Y por último no hay más que configurar y usar, que consiste básicamente en incluir los dos ficheros antes generados en el html y utilizarlo con la llamada a la función _().

alert (_('First String'));

Si los ficheros de cadenas se hacen demasiado pesados siempre se pueden dividir en «secciones» de la web o mediante cualquier otro método que considereis adecuado.

Basado en el artículo leído en http://24ways.org/2007/javascript-internationalisation, aunque, creo, mucho más simple.

SHARE :