JavaScript es un lenguaje interesante en el mundo y su procedimiento de trabajo es bastante diferente al de otros lenguajes. JavaScript es síncrono (orden específico de ejecución), lenguaje de subproceso único (significa que JavaScript solo puede ejecutar un comando a la vez).
Todo en JavaScript ocurre dentro de un CONTEXTO DE EJECUCIÓN, que puede suponer que es una caja grande o un contenedor en el que se ejecuta todo el código JavaScript. El CONTEXTO DE EJECUCIÓN contiene dos partes, una es Memoria (Entorno variable), donde todas las variables y funciones almacenan clave: par de valores y la otra es Componente de código (Subproceso de ejecución), donde el código se ejecuta una línea a la vez (se muestra la representación gráfica). por debajo de).
Ahora, ¿qué sucede cuando ejecutas código JavaScript?
La respuesta simple es: un contexto de ejecución creado.
Ahora escribo un código de demostración a continuación y diré línea por línea, cómo se ejecuta el código.
Javascript
<script> var n = 3; function squr(num) { var ans = num * num; return ans; } var three = squr(n); </script>
Cuando ejecuta este código completo, se crea un CONTEXTO DE EJECUCIÓN global y contiene dos partes, una es la memoria y la otra es la ejecución del código.
Cuando se encuentre la primera línea, reservará memoria para todas las variables (n, tres, cinco) y función (cuadrado). Al reservar la memoria para variables reserva un valor especial indefinido y para función, almacena código completo. la representación pictórica se muestra a continuación.
Después de asignar memoria para todas las variables y funciones, comienza la fase de ejecución del código (el código se ejecuta línea por línea).
Línea 1: var n=3, 3 valores colocados en el identificador n.
Línea 2-5: nada que ejecutar.
línea: 6: invocamos una función, ahora la función es el corazón de JavaScript. La función es un miniprograma y cada vez que se invoca una nueva función, se crea un nuevo CONTEXTO DE EJECUCIÓN (dentro de la fase de ejecución del código). también contiene memoria de dos partes y fase de ejecución de código. La memoria se asigna para variable y función (implica parámetros de función y otras variables).
Después de asignar memoria, la fase de ejecución del código llega aquí, el código dentro de la función se ejecuta y undefined se reemplaza por el valor real.
Después de eso, cuando se encuentre el retorno, devuelva el control del programa al lugar donde se invoca la función, el control va a la línea 6, encuentra la respuesta en la memoria local y devuelve el control tres y el valor de tres (indefinido) reemplazado por el valor de ans y después de que se eliminó todo (contexto de ejecución).
Después de eso, Global Execution Context se elimina y nuestro programa finaliza. Y una cosa más, JavaScript Maneja todo lo eliminado y creado (para administrar el contexto de ejecución) está administrando una pila. Su nombre es CALL STACK. Es un Stack que mantiene el orden de ejecución.
Publicación traducida automáticamente
Artículo escrito por dassubhadeep y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA