¿Qué es el contexto de ejecución en JavaScript?

¿Qué es el contexto de ejecución en JavaScript?
Es posible que haya estado codificando en JavaScript durante mucho tiempo y conocer la utilización de la lógica para cualquier operación específica, pero alguna vez ha pensado en cómo una función o variable mantiene la información relacionada con su entorno?

El motor JavaScript realiza toda la magia en el fondo creando "Contexto de ejecución". También permite que el motor JavaScript controle la complejidad del código para la tarea de ejecución.

Esta escritura explicará el contexto de ejecución y sus tipos en JavaScript. Entonces, comencemos!

¿Qué es el contexto de ejecución en JavaScript?

En el contexto de ejecución, el término "Ejecución"Se refiere al proceso de ejecución del código y"Contexto"Especifica el entorno para la ejecución. Entonces, ensamblando ambos términos, obtuvimos una definición que indica que el contexto de ejecución proporciona información relacionada con el entorno donde el código se almacena y ejecuta.

El contexto de ejecución de JavaScript contiene tres tipos diferentes:

  • Contexto de ejecución global: El contexto de ejecución global de JavaScript se crea de forma predeterminada.
  • Contexto de ejecución de funciones: El contexto de ejecución de funciones se crea cuando se llama a una función en el código proporcionado.
  • Evalte de ejecución contexT: An "eval ()"La función crea el contexto de ejecución de evaluación.

Pasaremos por los tipos de contexto de ejecución en las secciones dadas a continuación.

Nota: Estamos utilizando una herramienta de visualizador JavaScript desarrollada por UI.desarrollo para visualizar el contexto de ejecución que funciona en JavaScript.

Contexto de ejecución global en JavaScript

Cuando el motor JS ejecuta un programa, crea el contexto de ejecución inicial. Pero antes de eso, crea un nuevo contexto de ejecución conocido como "Contexto de ejecución global" o el "Contexto predeterminado". Es posible que sepa que JavaScript es un lenguaje único, por lo que solo permite la creación de un contexto de ejecución global para ejecutar el código.

Abra el visualizador JavaScript y sin agregar ningún código, haga clic en el "CorrerBotón "desde el lado izquierdo de la pantalla:

Como puede ver, el contexto de ejecución global se crea de forma predeterminada:

Cada contexto de ejecución (incluido el contexto de ejecución global) comprende los siguientes dos objetos:

  • Objeto global: Un objeto global contiene funciones y variables accesibles dentro del entorno actual. También se conoce como un "ventana"Objeto en el navegador.
  • "Este" objeto: "este"La palabra clave apunta hacia el objeto actual en el contexto de ejecución.

La siguiente sección discutirá diferentes fases del contexto de ejecución global en JavaScript.

Fases del contexto de ejecución global en JavaScript

Hay dos fases del contexto de ejecución global en JavaScript: Creación y Ejecución.

Fase de creación del contexto de ejecución global en JavaScript

Como se mencionó anteriormente, el contexto de ejecución global se crea de forma predeterminada cuando el motor JavaScript ejecuta un script o programa por primera vez. Se conoce como la fase de creación del contexto de ejecución global de JavaScript.

La fase de creación del contexto de ejecución global realiza las siguientes operaciones:

  • Ventana/Objeto global: Se crea un objeto global en la fase de creación, que contiene la información relacionada con las variables, las funciones y su declaración interna.
  • este objeto: "esteSe crea el objeto, que apunta hacia la ventana o el objeto global.
  • Variables: En la fase de creación, las variables se inicializan con un "indefinido" valor.
  • Funciones: Las funciones solo se declaran e inicializan en la fase de creación.

Ahora, veremos el funcionamiento de la fase de creación con la ayuda de un ejemplo.

Ejemplo: Fase de creación del contexto de ejecución global en JavaScript

Crearemos dos variables ","X" y "Y", Tener los siguientes valores:

var x = 3;
var y = 2;

A continuación, una función llamada "producto"Se define que acepta"N1" y "N2Parámetros:

Producto de funciones (N1, N2)
return n1 * n2;

Ahora, agregaremos el código anterior en el visualizador JavaScript y haremos clic en "Correr"Opción para ver su contexto de ejecución global:

Cuando el motor JS ejecuta el programa dado, almacenará y establecerá el "X" y "Y"Valores de la variable como"indefinido"Y luego declara la función"producto()"En el contexto de ejecución global:

El contexto de ejecución global avanzará hacia el "Fase de ejecución"Cuando la fase de creación completa sus operaciones especificadas.

Fase de ejecución del contexto de ejecución global en JavaScript

Durante el Fase de ejecución, El motor JS ejecuta secuencialmente el código, luego realiza la operación de asignación de valor para las variables y, por último, ejecuta las llamadas a la función adicional.

Contexto de ejecución de funciones en JavaScript

Un nuevo "Contexto de ejecución de funciones"Se crea para cada llamada de función. El contexto de ejecución de funciones se comporta similar al contexto de ejecución global; Sin embargo, en lugar de declarar un "objeto global", El motor JavaScript creará un"argumentosObjeto que comprende las referencias de los parámetros de una función.

Ejemplo: contexto de ejecución de funciones en JavaScript

En el mismo ejemplo, agregaremos la siguiente línea para invocar el "producto()"Función mientras pasa"X" y "Y"Como sus argumentos:

producto(X,y);

El visualizador JavaScript demostrará los cambios en el contexto de ejecución global:

Ahora, se crea un nuevo contexto de ejecución de funciones, que comprende las fases de creación y ejecución. También tiene un objeto único llamado "argumentos". El valor pasó al "producto()La función se agrega en el objeto de argumentos:

Contexto de ejecución de evaluación en JavaScript

En JavaScript, el "eval ()"La función convierte una cadena en código ejecutable. Cuando este método se agrega a un programa JavaScript, crea el suyo "Contexto de ejecución de evaluación". Los desarrolladores de JavaScript no usan el "eval ()"La función como la cadena pasada puede ser maliciosa, lo que hace que la aplicación o base de datos se bloquee. Como resultado, la función eval ha sido desaprobada.

Hemos proporcionado toda la información esencial sobre el Contexto de ejecución en Javascript. Puede explorarlo más de acuerdo con sus requisitos.

Conclusión

El contexto de ejecución se crea cuando el motor JavaScript ejecuta el código JavaScript, y tiene tres tipos: Global, Función, y evaluación contexto de ejecución. También comprende dos fases: Creación y Ejecución. El Fase de creación se crea cuando el programa se ejecuta por primera vez, mientras que, en el Fase de ejecución, Los valores especificados se asignan a las variables y se invocan las funciones adicionales. Este artículo explicó el contexto de ejecución y sus tipos en JavaScript.