Guía definitiva de ECMAScript (ES)

Javascript

ECMAScript es el estándar en el que se basa JavaScript, aunque suele hacerse referencia a él como ES+N, representando la N el número de versión del mismo, ya que estamos hablando de un estándar que se mejora continuamente, con nuevas versiones que actualmente se suceden anualmente. De hecho, seguramente te suene el estándar ES6, uno de los más extendidos actualmente.

En eta guía vamos a explicar todo lo que necesitas saber acerca del estándar ECMAScript, de forma que la próxima vez que leas los términos ES3, ES5, ES6, ES7, ES8, ES2015, ES2016, ES2017, ECMAScript2015, ECMAScript2016, ECMAScript2017, ECMAScript2018, ECMAScript2019, ECMAScript2020 o ECMAScript2021 sepas qué significan.

Qué es el estándar ECMAScript

ECMAScript es el estándar en el que se basa JavaScript, al que nos solemos referir abreviadamente como ES. JavaScript no es el único lenguaje que implementa este estándar, ya que también es implementado por estos otros lenguajes:

  • ActionScript: Se trata del lenguaje de scripting de Flash, que sigue más o menos vivo a pesar de haber perdido casi toda su popularidad desde la defunción de Flash.
  • JScript: JScript es un lenguaje de scripting de Microsoft para Internet Explorer que nació para competir con JavaScript, ya que JavaScript en sus inicios estaba únicametne destinado a navegadores Netscape.

Sin embargo, no existe ninguna duda de que JavaScript es el lenguaje más popular a día de hoy de entre los que implementan el estándar ECMAScript.

El nombre de ECMAScript deriva de la organización Ecma International, que es una empresa suiza encargada de definir estándares a nivel internacional. JavaScript fue inicialmente presentado a Ecma International por las empresas Netscape y Sun Microsystems, que seguramente te suenen por haber creado el navegador Netscape y el lenguaje Java respectivamente. Tras la presentación, el estándar de JavaScript recibió el nombre de ECMA-262, también conocido como ECMAScript.

Finalmente, la implementación JScript de Microsoft cayó en desuso, por lo que tras Internet Explorer 9 ya no quedaron referencias al mismo en los navegadores de Microsoft, pasando a recibir el nombre de JavaScript. Entre esto y la extinción de Flash, podríamos decir que JavaScript es actualmente el único lenguaje actual y con futuro que implementa el estándar ECMAScript.

Qué es el comité TC39

El comité TC39 es el que se encarga de desarrollar los nuevos estándares de ECMAScript. Está compuesto por miembros de varias empresas involucradas en el ecosistema de software libre de JavaScript. Algunos de sus miembros son Google, Facebook, Mozilla y Microsoft, entre otros muchos.

Cada una de las versiones del estándar debe seguir el proceso descrito aquí. Primero se realizan las propuestas, luego se crea un borrador con la sintaxis y la semántica de cada una de las propuestas, que pueden ser tanto añadidos como cambios en la sintaxis actual. Luego se escogen los cambios que son candidatos a ser añadidos en la siguiente versión de ECMAScript, refinando el borrador y, finalmente, se da por finalizado el borrador tras su revisión, implementándose tras los pertinentes tests e incluyéndose en este repositorio.

Versiones de ECMAScript (ES)

El tema de las versiones de ECMAScript es algo que puede dar lugar a confusiones, ya que cuando nos referimos al estándar como ECMAScript solemos utilizar el año de su definición, pero cuando nos referimos al estándar como ES, solemos usar un número que no se corresponde con el año de su lanzamiento.

Hace unos años, las diferentes especificaciones de ECMAScript siempre recibían el nombre de su versión, por lo que ES5 era claramente la quinta versión de ECMAScript. Sin embargo, desde la versión ES6, lanzada en el año 2015, el nombre oficial de cada una de ellas pasó a ser el conjunto de las siglas ES más el nombre del año de su creación. Por ello, ES6 recibió oficialmente el nombre de ES2015. Del mismo modo, la versión ES7 se llamó ES2016 y así sucesivamente hasta el día de hoy.

A continuación puedes encontrar una tabla en la que se muestra una lista con las diferentes versiones de JavaScript junto con su nombre oficial y el año de su lanzamiento:

Versión Nombre Publicación Guía
ES11 ES2020 Junio del 2020 -
ES10 ES2019 Junio del 2019 -
ES9 ES2018 Junio del 2018 -
ES8 ES2017 Junio del 2017 -
ES7 ES2016 Junio del 2016 -
ES6 ES2015 Junio del 2015 -
ES5.1 ES5.1 Junio del 2011 -
ES5 ES5 Diciembre del 2009 -
ES4 ES4 Descartado -
ES3 ES3 Diciembre de 1999 -
ES2 ES2 Junio de 1998 -
ES1 ES1 Junio de 1997 -
Quizás todavía tengas la duda acerca de lo que es ES.Next, así que lo explicaremos en el siguiente apartado.

Qué es ES.Next

Ya hemos visto qué son las diferentes versiones del estándar de JavaScript; ¿a qué hacemos referencia cuando hablamos de ES.Next?

ES.Next es el nombre que se suele usar para referirse a la próxima versión de JavaScript. Por ejemplo, cuando la última versión de JavaScript es la versión ES2019, la versión ES.Next será ES2020.


Avatar de Edu Lazaro

Edu Lázaro: Ingeniero técnico en informática, actualmente trabajo como desarrollador web y programador de videojuegos.

👋 Hola! Soy Edu, me encanta crear cosas y he redactado esta guía. Si te ha resultado útil, el mayor favor que me podrías hacer es el de compatirla en Twitter 😊

Si quieres conocer mis proyectos, sígueme en Twitter.

Deja una respuesta

“- Hey, Doc. No tenemos suficiente carretera para ir a 140/h km. - ¿Carretera? A donde vamos, no necesitaremos carreteras.”