¿Cómo difieren Javascript y ECMAScript?

JavaScript es una implementación de ECMAScript. Por lo tanto, es una de varias variedades o dialectos de ECMAScript.


Breve historia:

JavaScript se desarrolló durante 1995 y se lanzó con Netscape Navigator en marzo de 1996. Microsoft se dio cuenta de que necesitaban JavaScript en Internet Explorer, por lo que crearon algo llamado ‘JScript’ (llamado así para evitar problemas de marca registrada) que era compatible con todos los propósitos y propósitos. JavaScript de Netscape.

El JavaScript de Netscape se envió a Ecma International para su estandarización en noviembre de 1996. Las disputas de nombres entre Netscape y Microsoft dieron como resultado que el lenguaje estandarizado resultante se llamara ECMAScript.


Mozilla aún desarrolla JavaScript, aunque Ecma International realiza el desarrollo más real del lenguaje que la mayoría de los desarrolladores llamarían ‘JavaScript’. Si ha escuchado que cosas como Clases, Generadores e Iteradores están llegando a JavaScript, en realidad están llegando a ECMAScript y luego se convierten inmediatamente en parte de JavaScript.

JavaScript (y JScript) ahora son realmente solo ECMAScript con una gama más amplia de funciones y API. ECMAScript no incluye DOM o AJAX ni ninguna de las muchas API nuevas que han surgido en los últimos años, estas características son las adiciones que JavaScript hace a ECMAScript.

Si se está preguntando, las otras implementaciones de ECMAScript además de JScript y JavaScript son ActionScript, QtScript, InScript y QML.

ECMAScript es el lenguaje especificado en el estándar ECMA. Originalmente fue la formalización de JavaScript, pero ahora forma la base de varios “lenguajes”, incluidos JavaScript, JScript, ActionScript.

La especificación oficial de “JavaScript” es la mantenida por Netscape (quien lo hizo) y ahora por la Fundación Mozilla, y por lo tanto refleja nuevas características de lenguaje compatibles con el motor Gecko, que no se han incluido en el estándar ECMA. Por lo tanto, otros navegadores técnicamente no implementan “JavaScript” (no la última versión de todos modos), pero aún pueden implementar algunas de las nuevas características. Algunas de las nuevas características pueden convertirse en nuevas versiones del estándar ECMAScript.

Hice un video sobre esto. Echale un vistazo