Que es ECMAScript

ECMAScript es una especificación estándar de un lenguaje desarrollado por Brendan Eich, empleado en Netscape; inicialmente se llamaba Mocha, luego LiveScript, y finalmente Javascript.​ En diciembre de 1995, Sun Microsystems y Netscape anunciaron JavaScript en una conferencia de prensa. En marzo de 1996, Netscape Navigator 2.0 fue lanzado con soporte para JavaScript.

Debido al gran éxito de Javascript como lenguaje de scripting del lado del cliente para páginas web, Microsoft desarrolló un dialecto compatible del lenguaje, llamado JScript, para evitar problemas legales con la marca. JScript agregó nuevos métodos para las fechas, para aliviar los problemas del año 2000 (Y2K), causados en parte porque los métodos de Javascript estaban basados en las clases Date de Java.6​ JScript fue incluido en Internet Explorer 3.0, lanzado en agosto de 1996.

Netscape envió el borrador de JavaScript a Ecma International para su estandarización y para que trabajaran sobre su especificación ECMA-262, que comenzó en noviembre de 1996.​ La primera edición de ECMA-262 fue adoptada por asamblea general de Ecma en junio de 1997. Varias ediciones del lenguaje estándar han sido publicadas desde entonces. El nombre “ECMAScript” fue un compromiso entre las organizaciones involucradas en la estandarización del lenguaje, especialmente entre Netscape y Microsoft, que se disputaron el dominio de las primeras sesiones estándar. Eich comentó que “ECMAScript fue siempre un nombre de marca indeseado, que sonaba como una enfermedad de la piel.”

A pesar de que ambas especificaciones, tanto JavaScript y JScript, apuntan a ser compatibles con ECMAScript, también proveen características adicionales, no descritas en la especificaciones de ECMA.

Qué es ECMAScript

ECMAScript específicamente es el estándar que a partir del año 2015 a la actualidad se encarga de regir como debe ser interpretado y funcionar el lenguaje JavaScript, siendo este (JS – JavaScript) interpretado y procesado por multitud de plataformas, entre las que se encuentran los navegadores web, NodeJS u otros ambientes como el desarrollo de aplicaciones para los distintos sistemas operativos que actualmente existen en el mercado. Los responsables de dichos navegadores y JavaScript deben encargarse de interpretar el lenguaje tal como lo fija ECMAScript.

Evolución de ECMAScript


  • Año 1995: El programador y trabajador Brendan Eich de la empresa Netscape como se mencionó anteriormente creó un lenguaje de programación llamado “Mocha”, posteriormente la empresa Sun Microsystem adquirió Netscape y este pasó a llamarse JavaScript hasta la actualidad.
  • 1997: Nace el estándar Document Object Model (DOM) para evitar las incompatibilidades entre los navegadores. Este mismo año, surge el estándar ECMA-262 y sale al mercado ECMAScript 1.
  • 1998: Sale ECMAScript 2 con la actualización del formato en la especificación para alinearla con los estándares ISO.
  • 1999: Es lanzado ECMAScript 3, cuya novedad era el soporte para expresiones regulares, gestión estructurada de excepciones y otras mejoras puntuales.
  • 2009: Luego de una década nace ECMAScript 5 ya que la versión 4 no llegó a feliz término puesto que le querían agregar una cantidad considerable de cambios y perdería el propósito inicial de este. En ECMAScript 5 se añadió el soporte nativo para JSON o los getters y setters para propiedades, entre otras pequeñas mejoras.
  • 2011: Es puesta en marcha la versión ECMAScript 5.1, esta simplemente alineaba el estándar de ECMA con el formato correspondiente de ISO (ISO/IEC 16262:2011).
  • 2015: Sale a producción ECMAScript 6 la cual llegó con una serie de mejoras de las cuales podemos mencionar la mejora de la sintaxis y actualización de la misma ya que trajo consigo los símbolos, las lambdas y tipos de datos que no existían en las versiones anteriores, así como también fueron mejoradas las estructuras iteración.
  • 2016: ECMAScript 7 esta versión trajo consigo mejoras básicamente el operador de exponenciación y un método nuevo para las matrices que permite comprobar si existen ciertos elementos dentro de éstas.
  • 2017: La octava edición ECMAScript 8 incluyó constructores async/await , los cuales funcionan usando generadores.
  • 2018: ECMAScript 9 agrego los operadores rest/spread para variables.
  • 2019: Este año se agregaron nuevas características entre las cuales podemos destacar las siguientes la función Array.flat() devuelve una nueva matriz con cualquier sub-matriz. Por su parte, String.trimStart() puede utilizarse para recortar el espacio en blanco desde el inicio de una cadena. Por otra parte, para el manejo de errores con try / catch se aplica el “error opcional en catch” ya que permite a los desarrolladores utilizar el try / catch sin la obligatoriedad de aplicar el parámetro de error dentro del bloque correspondiente.

ES6 vs ES5: Novedades de ECMAScript 6

A continuación te presentamos algunas de las novedades de ECMAScript 6 (ES6) en cuanto a es5 (ECMAScript 5):

  • Función Arrow: Conocidas como expresiones lambda en C# y Java, arrows o flechas son abreviaciones de funciones utilizando el operador => Por ejemplo:
// ES5
var sum = function(y, z){
return y+z;
}
// ES6
var sum = (y, z) => y + z;
  • El código de la sintaxis de las clases ha sido actualizado de forma que sea más sencillo y de fácil comprensión al momento de su implementación.
  • Para indicar que una variable solo va a estar definida en un bloque en particular se agregara let a su inicio y al terminar el bloque la variable dejará de existir, siendo de esta forma muy útil a la hora de evitar errores desde el punto de vista lógico, en el momento en que se altere una variable que no debería haberse modificado.
  • Las variables constantes van definidas por const en su inicio esto permitirá prevenir que una variable declarada cambie de valor, convirtiéndola efectivamente en una constante.

Importancia de ECMAScript en la actualidad

Como hemos podido notar, desde que inició hasta la actualidad ECMAScript, viene siendo el estándar que abarca la web en general, todo esto gracias a las mejoras continuas y a las optimizaciones que se van desarrollando con el objetivo de tener siempre un mejor rendimiento, entre otros aspectos. Hoy en día cuenta con gran importancia en el mercado, por su versatilidad JavaScript se ha convertido en un lenguaje universal y puede ser encontrado tanto a nivel móvil como de hardware, servidor, web, entre otros. Adicionalmente, cuenta con una variedad de librerías y frameworks a fin de facilitar el desarrollo de nuevos proyectos.

OW, WP

Queremos seguir creando cursos gratuitos en nuestro canal de YouTube. Solo te pedimos tu ayuda para crecer más. Suscríbete por favor. (Cursos, talleres y charlas gratis para ti).

Ernesto Mota
Nací en el d.f., sigo siendo defeño, hoy radico en la hermosa ciudad de Cuernavaca, Morelos, soy Ing. en Sistemas computacionales, con un posgrado en Tecnologías de información, Doctorando en ambientes virtuales de aprendizaje y realidad aumentada, Tecnólogo es mi categoría laboral, y mi linea de investigación es la realidad aumentada aplicada a nuevos entornos de aprendizaje.

Últimos artículos

a

Publicasciones relaciodadas