Extensiones de email: ccTLD

10/Ene/2009 JavaScript , 1 Comentario

En ciertas ocasiones nos encontraremos direcciones de email de las cuales no conozcamos el país de referencia al que pertenecen. Los países de referencia vienen especificados en las extensiones de email.

El ejemplo que vamos a realizar será un código en JavaScript, el cual, dado una dirección de email nos devuelva el país al cual está asociada su extensión de email.

Antes de empezar hablemos de donde procede la lista de las extensiones de los emails, también conocidas como ccTLDs (country code Top Level Domains). La lista de extensiones esta mantenida y gestionada por IANA (Internet Asigned Numbers Authority) organismo que se atiene a las extensiones recogidas en la lista ISO 3166-1, las cuales no se usan solo para el correo electrónico.

Cabe mencionar que IANA es un grupo asentado en el seno de ICANN (The Internet Corporation for Assigned Names and Numbers) creada en Octubre de 1998 por una serie de empresas de Internet, técnicos, académicos y comunidades de usuarios con el fin de ejecutar un conjunto de funcionalidades técnicas para el mantenimiento de Internet.

Una vez vista este breve introducción indicar que el ejercicio no es complicado y casi lo más complicado era buscar las asociaciones entre extensiones y nombres, las cuales almacenaremos en un array. 🙂

  1. extensions = new Array(
  2. ['.es','España'],
  3. ['.fr','Francia'],
  4. ....
  5. ['.zw','Zimwabe']);
  6.  

Lo siguiente que haremos será crear una función JavaScript, la cual reciba el email y devuelva el país asociado a la extensión.

  1. function getCountry(email) {...}

Lo primero que haremos en la función será obtener la extensión. La extensión se encuentra en los últimos 3 caracteres del email. Utilizaremos la función substr sobre la cadena de texto.

  1. var ext = email.substr(email.length-3,3);

Ahora hay que empezar a buscar la extensión sobre el array de extensiones. Nos apoyaremos en un bucle while, del que nos saldremos si hemos encontrado la extensión o si hemos recorrido todo el array de extensiones.

  1. while ((!encontrado) && (cont<extensions.length)) {
  2. if (extensions[cont][0] == ext)
  3. encontrado = true;
  4. else
  5. cont++;
  6. }

Si hemos encontrado la extensión, mostramos la información por pantalla. Solo nos quedará llamar a la función desde un formulario.

Nota1: Para simplificar el ejemplo no he incluido la validación sobre la cadena de texto que compruebe que el e-mail es correcto o no está vacío. Si estáis interesados en eso leer el articulo validar email con JavaScript.

Nota 2: No he tenido tiempo para traducir los nombres de los países. Si alguien se anima........ 😉

Vídeos sobre Javascript


Difunde el Conocimiento

Si te ha gustado el artículo o te ha sido de utilidad, no dejes de compartirlo con tus amigos en las redes sociales... Te estaremos muy agradecidos. :-D

Un comentario en “Extensiones de email: ccTLD”

Víctor Cuervo

kelly

Buenos dias, mirando tus textos se que puedo pedirte un favor, lo que pasa es que para la universidad tengo q realizar una pagina web en la base de notepad++, un programa que me lea el grado de un polinomio y asi lo resuelva pero en realidad no lo he podido realizar
agradeceria de todo corazon tu colaboracion
gracias
att kelly cardenas

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

*