¿Cuál es la diferencia entre ECMAScript y JavaScript? ¿Cuál es el mejor para aprender?


Respuesta 1:

Fuera del historial original de JavaScript, JavaScript es un nombre genérico para cualquiera de las versiones del estándar de idioma.

Una determinada versión de JavaScript se basa en un estándar ECMAScript dado, pero no necesariamente significa que la siga al punto.

La idea detrás de ECMAScript es un intento de estandarizar el lenguaje que genéricamente llamamos JavaScript.

Lo que da cierto sabor a JavaScript es el motor específico que procesa y acepta (o rechaza) ciertas instrucciones basadas en ECMAScript.

Por ejemplo, en el navegador, ECMAScript se transforma con el DOM. Aquí, el resultado es un JavaScript diferente del JavaScript que usaría al escribir las instrucciones de ECMAScript en Node.js.

Los motores no están escritos para "JavaScript"; están escritos para interpretar las instrucciones de ECMAScript.

Lista de motores ECMAScript - Wikipedia

Los diferentes tipos de motores comprenden ciertas instrucciones de ECMAScript de una determinada versión de ECMAScript, pero no exactamente; muchas veces, el motor agrega aún más instrucciones propias, brindando capacidades de JavaScript que no estaban en el estándar.

Como ejemplo, el motor Google V8, cuando se convierte para el uso de Node.js, acepta muchas instrucciones que no están en el estándar ECMAScript. Esas instrucciones fueron creadas por los desarrolladores de Node.js para que JavaScript sea útil en el lado del servidor. Eso no es literal ECMAScript; Es una variación del estándar para satisfacer una necesidad específica.

¿Debería uno aprender ECMAScript, o aprender un sabor de JavaScript?

Yo diría que deberíamos aprender el JavaScript que necesitamos para el trabajo que vamos a hacer.

Si vamos a trabajar en proyectos Node.js, entonces necesitamos saber Node.js.

Si vamos a trabajar en proyectos front-end, entonces aprenderemos el sabor de JavaScript del navegador, que puede manipular el DOM.

Si trabajamos con Flash (espero que no), entonces necesitamos aprender la versión ECMAScript para Flash, que se llama ActionScript.

Si vamos a mover datos, es posible que necesitemos mirar un subconjunto de JavaScript llamado JSON. JSON se ha convertido en un estándar ECMA.

Y la lista continúa. Estoy seguro de que, en algún lugar en un lugar oculto, una organización está utilizando una versión ECMAScript que es muy diferente del JavaScript que conocemos popularmente.

¡Incluso podrían llamarlo "JavaScript" también!


Respuesta 2:

El nombre JavaScript es propiedad intelectual de Oracle Corporation. El nombre técnico del idioma es Ecmascript. Todos (incluido yo mismo) ignoran esto.

Aparte de eso, no hay una diferencia realmente. JavaScript, como la mayoría de los idiomas, cambia con el tiempo. Oficialmente, las características que debe tener JavaScript están determinadas por el organismo europeo de normalización ECMA. Sin embargo, en la práctica, son las características que los proveedores de las plataformas JavaScript más populares han agregado.

Antes de 2015, el ritmo del cambio oficial era glacialmente lento. Creo que ha habido 4 o 5 conjuntos de actualizaciones en su mayoría pequeñas desde 1995. Los proveedores de navegadores comenzaron a implementar características antes que el comité de estándares, y la gente estaba experimentando con características completamente no especificadas pero ordenadas utilizando herramientas como coffeescript y Babel. Básicamente se hizo evidente que los estándares necesarios para ponerlo en marcha.

Así que es6 / es2015 fue una gran actualización de la especificación que lo alineó con las características que muchas personas ya estaban usando y agregó algunas nuevas (luego eliminó algunas, luego agregó otra vez ... los bordes de esto se volvieron extraños). Se lanzó oficialmente en 2015 y contenía algunas características que habían estado disponibles durante años (promesas), algunas que se implementaron poco después (operador extendido) y un puñado que terminó siendo solo parcialmente especificado (módulos js). Desde entonces, actualizaciones más pequeñas han seguido anualmente.

Desafortunadamente, debido a que Internet es para siempre y cualquiera puede escribir una publicación de blog, encontrará muchos tutoriales y artículos en línea que son anteriores o ignoran las nuevas características del lenguaje. Pero Es6 es JavaScript. También es una excusa para las personas que no piensan que es justo que esta industria requiera un aprendizaje continuo para mantenerse al día: "oh, sé JavaScript, simplemente no Es6". No, en ese caso, realmente no conoces JavaScript.


Respuesta 3:

El nombre JavaScript es propiedad intelectual de Oracle Corporation. El nombre técnico del idioma es Ecmascript. Todos (incluido yo mismo) ignoran esto.

Aparte de eso, no hay una diferencia realmente. JavaScript, como la mayoría de los idiomas, cambia con el tiempo. Oficialmente, las características que debe tener JavaScript están determinadas por el organismo europeo de normalización ECMA. Sin embargo, en la práctica, son las características que los proveedores de las plataformas JavaScript más populares han agregado.

Antes de 2015, el ritmo del cambio oficial era glacialmente lento. Creo que ha habido 4 o 5 conjuntos de actualizaciones en su mayoría pequeñas desde 1995. Los proveedores de navegadores comenzaron a implementar características antes que el comité de estándares, y la gente estaba experimentando con características completamente no especificadas pero ordenadas utilizando herramientas como coffeescript y Babel. Básicamente se hizo evidente que los estándares necesarios para ponerlo en marcha.

Así que es6 / es2015 fue una gran actualización de la especificación que lo alineó con las características que muchas personas ya estaban usando y agregó algunas nuevas (luego eliminó algunas, luego agregó otra vez ... los bordes de esto se volvieron extraños). Se lanzó oficialmente en 2015 y contenía algunas características que habían estado disponibles durante años (promesas), algunas que se implementaron poco después (operador extendido) y un puñado que terminó siendo solo parcialmente especificado (módulos js). Desde entonces, actualizaciones más pequeñas han seguido anualmente.

Desafortunadamente, debido a que Internet es para siempre y cualquiera puede escribir una publicación de blog, encontrará muchos tutoriales y artículos en línea que son anteriores o ignoran las nuevas características del lenguaje. Pero Es6 es JavaScript. También es una excusa para las personas que no piensan que es justo que esta industria requiera un aprendizaje continuo para mantenerse al día: "oh, sé JavaScript, simplemente no Es6". No, en ese caso, realmente no conoces JavaScript.


Respuesta 4:

El nombre JavaScript es propiedad intelectual de Oracle Corporation. El nombre técnico del idioma es Ecmascript. Todos (incluido yo mismo) ignoran esto.

Aparte de eso, no hay una diferencia realmente. JavaScript, como la mayoría de los idiomas, cambia con el tiempo. Oficialmente, las características que debe tener JavaScript están determinadas por el organismo europeo de normalización ECMA. Sin embargo, en la práctica, son las características que los proveedores de las plataformas JavaScript más populares han agregado.

Antes de 2015, el ritmo del cambio oficial era glacialmente lento. Creo que ha habido 4 o 5 conjuntos de actualizaciones en su mayoría pequeñas desde 1995. Los proveedores de navegadores comenzaron a implementar características antes que el comité de estándares, y la gente estaba experimentando con características completamente no especificadas pero ordenadas utilizando herramientas como coffeescript y Babel. Básicamente se hizo evidente que los estándares necesarios para ponerlo en marcha.

Así que es6 / es2015 fue una gran actualización de la especificación que lo alineó con las características que muchas personas ya estaban usando y agregó algunas nuevas (luego eliminó algunas, luego agregó otra vez ... los bordes de esto se volvieron extraños). Se lanzó oficialmente en 2015 y contenía algunas características que habían estado disponibles durante años (promesas), algunas que se implementaron poco después (operador extendido) y un puñado que terminó siendo solo parcialmente especificado (módulos js). Desde entonces, actualizaciones más pequeñas han seguido anualmente.

Desafortunadamente, debido a que Internet es para siempre y cualquiera puede escribir una publicación de blog, encontrará muchos tutoriales y artículos en línea que son anteriores o ignoran las nuevas características del lenguaje. Pero Es6 es JavaScript. También es una excusa para las personas que no piensan que es justo que esta industria requiera un aprendizaje continuo para mantenerse al día: "oh, sé JavaScript, simplemente no Es6". No, en ese caso, realmente no conoces JavaScript.


Respuesta 5:

El nombre JavaScript es propiedad intelectual de Oracle Corporation. El nombre técnico del idioma es Ecmascript. Todos (incluido yo mismo) ignoran esto.

Aparte de eso, no hay una diferencia realmente. JavaScript, como la mayoría de los idiomas, cambia con el tiempo. Oficialmente, las características que debe tener JavaScript están determinadas por el organismo europeo de normalización ECMA. Sin embargo, en la práctica, son las características que los proveedores de las plataformas JavaScript más populares han agregado.

Antes de 2015, el ritmo del cambio oficial era glacialmente lento. Creo que ha habido 4 o 5 conjuntos de actualizaciones en su mayoría pequeñas desde 1995. Los proveedores de navegadores comenzaron a implementar características antes que el comité de estándares, y la gente estaba experimentando con características completamente no especificadas pero ordenadas utilizando herramientas como coffeescript y Babel. Básicamente se hizo evidente que los estándares necesarios para ponerlo en marcha.

Así que es6 / es2015 fue una gran actualización de la especificación que lo alineó con las características que muchas personas ya estaban usando y agregó algunas nuevas (luego eliminó algunas, luego agregó otra vez ... los bordes de esto se volvieron extraños). Se lanzó oficialmente en 2015 y contenía algunas características que habían estado disponibles durante años (promesas), algunas que se implementaron poco después (operador extendido) y un puñado que terminó siendo solo parcialmente especificado (módulos js). Desde entonces, actualizaciones más pequeñas han seguido anualmente.

Desafortunadamente, debido a que Internet es para siempre y cualquiera puede escribir una publicación de blog, encontrará muchos tutoriales y artículos en línea que son anteriores o ignoran las nuevas características del lenguaje. Pero Es6 es JavaScript. También es una excusa para las personas que no piensan que es justo que esta industria requiera un aprendizaje continuo para mantenerse al día: "oh, sé JavaScript, simplemente no Es6". No, en ese caso, realmente no conoces JavaScript.