Contexto de execução JavaScript

Resumo : neste tutorial, você aprenderá sobre o contexto de execução do JavaScript para entender profundamente como o código JavaScript é executado.

Introdução ao contexto de execução JavaScript

Vamos começar com o seguinte exemplo:

let x = 10;

function timesTen(a){
    return a * 10;
}

let y = timesTen(x);

console.log(y); // 100
Linguagem de código:  JavaScript  ( javascript )

Neste exemplo:

  • Primeiro, declare a xvariável e inicialize seu valor com 10.
  • Segundo, declare a timesTen()função que aceita um argumento e retorna um valor que é o resultado da multiplicação do argumento por 10.
  • Terceiro, chame a timesTen()função com o argumento como o valor da xvariável e armazene o resultado na variável y.
  • Finalmente, envie a variável ypara o Console .

Nos bastidores, o JavaScript faz muitas coisas. neste tutorial, você se concentrará nos contextos de execução.

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

Cada contexto de execução possui duas fases: a fase de criação e a fase de execução.

A fase de criação

Quando o mecanismo JavaScript executa um script pela primeira vez, ele cria o contexto de execução global. Durante esta fase, o mecanismo JavaScript executa as seguintes tarefas:

  • Crie o objeto global , ou seja, windowno navegador da web ou globalem Node.js.
  • Crie o thisobjeto e vincule-o ao objeto global.
  • Configure um heap de memória para armazenar variáveis ​​e referências de funções .
  • Armazene as declarações de função no heap de memória e variáveis ​​dentro do contexto de execução global com os valores iniciais como undefined.

Quando o mecanismo JavaScript executa o exemplo de código acima, ele faz o seguinte na fase de criação:

  • Primeiro, armazene as variáveis x​​e ya declaração da função timesTen()no contexto de execução global.
  • Segundo, inicialize as variáveis x​​e ypara undefined.
contexto de execução javascript - contexto de execução global em fase de criação

Após a fase de criação, o contexto de execução global passa para a fase de execução.

A fase de execução

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

contexto de execução javascript - contexto de execução global em fase de execução

Para cada chamada de função, o mecanismo JavaScript cria um novo contexto de execução de função .

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 argumentsobjeto que é uma referência a todos os parâmetros da função:

contexto de execução javascript - contexto de execução de função em fase de criação

Em nosso exemplo, o contexto de execução da função cria o argumentsobjeto que faz referência a todos os parâmetros passados ​​para a função, define thiso valor para o objeto global e inicializa o aparâmetro como undefined.

Durante a fase de execução do contexto de execução da função, o mecanismo JavaScript atribui 10ao parâmetro ae retorna o resultado ( 100) ao contexto de execução global:

contexto de execução javascript - contexto de execução de função em fase de execução

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 , que você aprenderá no próximo tutorial.

Neste tutorial, você aprendeu sobre os contextos de execução do JavaScript, incluindo o contexto de execução global e os contextos de execução de funções.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *