La Asociación Europea de Fabricantes de Computadoras (ECMA: European Computer Manufacturer Association) es la organización sin ánimo de lucro encargada de regular multitud de estándares de ámbito mundial en la industria de la computación. Entre otras muchas cosas es la encargada de regular el lenguaje JavaScript, también conocido como ECMAScript (es indistinto hablar de uno o de otro).
La primera versión de JavaScript, ECMAScript 1, se lanzó en Junio de 1997, y desde entonces han existido las versiones 2, 3 y 5, que es la más usada actualmente (la 4 se abandonó). Desde hace unos años estaban trabajando en la siguiente versión del lenguaje, conocida como ECMAScript 6, y ayer por fin, tras mucho trabajo, ha visto la luz la versión definitiva el estándar.
El nombre oficial del lenguaje es ahora ECMAScript 2015.
Se trata de una evolución del lenguaje JavaScript para dotarlo de características avanzadas que se echaban mucho en falta y que sí estaban disponibles en otros lenguajes populares, como por ejemplo:
- Mejoras de sintaxis: parámetros por defecto, let, plantillas...
- Módulos para organización de código
- Verdaderas clases para programación orientada a objetos
- Promesas, para programación asíncrona
- Mejoras en programación funcional: expresiones de flecha, iteradores, generadores...
Para que te hagas una idea de la cantidad de cosas que trae ECMAScript 6, su documento descriptivo ocupa 566 páginas mientras que el anterior de ECMAScript 5.1 (PDF) tenía tan solo 258.
A pesar de todos estos añadidos, una cuestión muy importante es que ECMAScript 6 es totalmente compatible hacia atrás con versiones anteriores, por lo que no tenemos que preocuparnos: nuestro código actual funcionará perfectamente en motores de JavaScript que usen la próxima versión.
En la actualidad ECMAScript 6 está soportado parcialmente por las últimas versiones de la mayoría de los navegadores, aunque todavía no hay ninguno que lo soporte por completo. Suponemos que en los próximos meses, como está ya cerrado, se irán incorporando poco las novedades por completo a los navegadores, pero bastante probable que tarden al menos un año en estar ampliamente adoptadas.
En la siguiente dirección existe una interesante tabla de compatibilidad que muestra el soporte detallado de cada características nueva de ECMAScript 6 en cada navegador del mercado. De momento verás mucho color rojo, pero con el tiempo cada vez será más verde.
El cierre del estándar supone una gran noticia para los desarrolladores porque ya no estamos a merced de los cambios que pudieran ocurrir, y podemos estar seguros de que lo que aprendamos será válido en unos meses en todos los navegadores del mercado.