⊗jsPmClOVA 259 of 505 menu

Acesso a variáveis externas em funções JavaScript

Vamos considerar o seguinte código:

let num = 1; // define o valor da variável function func() { console.log(num); // exibe no console } func(); // chama a função

Como mencionei anteriormente, o valor da variável não precisa necessariamente estar antes da definição da função, o importante é que esteja antes de sua chamada:

function func() { console.log(num); } let num = 1; func();

Na realidade, isso não é bem assim. Nossa função sabe o valor da variável num mesmo antes de ser chamada:

let num = 1; function func() { console.log(num); // a função já sabe que num = 1 }

Aqui está um exemplo mais complexo:

let num = 1; // neste momento a função descobre que num = 1 function func() { console.log(num); } num = 2; // neste momento a função descobre que num = 2

Vamos adicionar chamadas de função:

let num = 1; // neste momento a função descobre que num = 1 func(); // exibirá 1 function func() { console.log(num); } func(); // exibirá 1 num = 2; // neste momento a função descobre que num = 2 func(); // exibirá 2

Repetindo: na verdade, a função sabe os valores das variáveis externas, mesmo sem ter sido chamada.

roidbnkauzl