Historia de JavaScript


https://s3-us-west-2.amazonaws.com/secure.notion-static.com/1ea04ef8-1e8c-4fa3-bd82-93de12c44dd6/Untitled.png

Desde su inicio como Mocha gracias a Next Scape que vió la necesidad de una evolución en la web, más allá de transmitir información estática.

Ha pasado por muchos cambios y adaptaciones ya que es necesario que este lenguaje evolucione junto con la web.

ECMAScript es una especificación estandarizada por Ecma international. Fué creado para estandariza JavaScript y para ayudar a fomentar múltiples implementaciones independientes.

The evolution of the web

JavaScript Engine

Es el motor de JS, es un interprete que corre en el navegador. Su función es interpretar el código JavaScript y convertirlo a Machine Code para que la máquina pueda procesarlo y entenderlo.

V8

Es el motor de JavaScript que nació de la necesidad de correr aplicaciones más robustas y complejas en la web, específicamente nació por la necesidad de hacer realidad Google Maps dentro de Google Chrome.

<aside> 💡 La razón del nombre “motor V8” y el logo se debe a la identificación con los motores V8 de los automóviles. . Un motor V8 en el automovilismo es un motor montado en el cárter con dos bancos de cuatro cilindros, que comparten cigüeñal, formando una “V”. . Es usado en muchas categorías de competición automovilística, especialmente en Estados Unidos, este tipo de motores incluso es ocupado en grandes competiciones de autos,

</aside>

No hay solo un motor de JavaScript, ya que cada navegador cuenta con uno porpio:

List of ECMAScript engines - Wikipedia

Fundamentos de JavaScript: por qué deberías saber cómo funciona el motor - campusMVP.es

Funcionamiento interno del Engine


Una se interpreta nuestro archivo JS se genera un entorno global que cumple con 3 tareas:

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/56a70e3f-be8d-447c-867c-1338077a5a57/Untitled.png

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/2174ed4e-9cd4-460d-ae4d-bbb49b889b8e/Untitled.png

El contexto de ejecución en el cual empieza a correr el código, por medio de un stack de tareas para ir ejecutando una por una.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/cd063617-ea1b-495e-a115-e18182c54736/Untitled.png

Window como objeto global ya está establecido en nuestro navegador en representacion de la pantalla de nuestro navegador. Este objeto trabaja por medio de diferentes API's para poder funcionar correctamente.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/6a9e312f-0dfe-4432-a510-82da00a4d1de/Untitled.png

This es una total referencia al objeto Window:

Proceso de compilación: