Contexto de execução em JavaScript

Feb 25 2023
Vamos começar com um exemplo e, em seguida, detalhar como esse código está funcionando nos bastidores. Primeiro, declare as variáveis ​​x e y e inicialize com seus respectivos valores 10 e 20.

Vamos começar com um exemplo e, em seguida, detalhar como esse código está funcionando nos bastidores.

var x = 10;
var y = 20;

function add(a,b){
  return a+b;
}

var result = add(x,y);

console.log(result) //30

Primeiro, declare as variáveis ​​x e y e inicialize com seus respectivos valores 10 e 20.

Em segundo lugar, declare a função add que aceita o argumento e retorne a soma dos argumentos, ou seja, 10 + 20 = 30.

Em terceiro lugar, chame a função add com os argumentos como os valores da variável x & y e armazene o resultado na variável result.

Por fim, a saída da variável result com console.

Ao executar o código acima, o JavaScript faz muitas coisas.

Quando o mecanismo JavaScript executa o código JavaScript naquele momento, ele cria contextos de execução.

Cada contexto de execução tem duas fases

  1. A fase de criação.
  2. A fase de execução.

Quando o mecanismo JavaScript executa o código pela primeira vez, ele cria o contexto de execução global. Durante esta fase, o JavaScript executa algumas tarefas.

  1. Crie o objeto global, ou seja, janela no navegador da Web ou global no Node.js.
  2. Crie este objeto (esta palavra-chave) e vincule-o ao objeto global. No caso do navegador da Web, esta palavra-chave é anexada ao objeto janela e no Node js esta palavra-chave é anexada ao objeto global.
  3. Configure um heap de memória para armazenar referências de variáveis ​​e funções.
  4. Armazene as declarações de função no heap de memória e as variáveis ​​dentro do contexto de execução global com os valores iniciais como indefinidos.
  1. Armazene a variável x, y & result e a declaração de função add() no contexto de execução global.
  2. Inicialize as variáveis ​​com valor indefinido, ou seja, x = indefinido, y = indefinido e resultado = indefinido.

Fase de execução

Durante a fase de execução, o mecanismo JavaScript executa o código linha por linha, atribui os valores à variável e executa as chamadas de função.

Para cada chamada de função, o mecanismo JavaScript cria uma nova chamada de execução funcional.

O contexto de execução da função é semelhante ao contexto de execução global. Mas, em vez de criar o objeto global, o mecanismo JavaScript cria o objeto de argumentos que é uma referência a todos os parâmetros da função.

Em nosso exemplo, o mecanismo JavaScript cria um objeto de argumentos que faz referência a todos os parâmetros passados ​​para a função e define esse valor como o objeto global no caso do navegador da Web, esse valor é anexado ao objeto janela e no Node js esse valor é anexado ao global objeto e também inicializa um parâmetro & b com valor indefinido.

Durante a fase de execução do contexto de execução da função, o mecanismo JavaScript atribui os valores 10 e 20 ao parâmetro a & b e retorna o resultado (30) ao contexto de execução global.

Para acompanhar todos os contextos de execução, incluindo o contexto de execução global e os contextos de execução de funções, o mecanismo JavaScript usa a pilha de chamadas.

Vamos ficar em contato

Espero que este artigo seja valioso para você, até a próxima!