Até agora, usamos o JavaScript para criar funções, manipular dados, trabalhar com eventos e até construir aplicações instaláveis.
Mas existe uma pergunta fundamental que quase nunca é feita:
como o JavaScript realmente executa o código que escrevemos?
Nesta aula, vamos entender o funcionamento interno da execução do JavaScript — sem fórmulas mágicas e sem mistério.
🎯 Objetivo da aula
Ao final desta aula, você será capaz de:
- Entender como o JavaScript lê e executa o código
- Compreender a execução linha por linha
- Saber por que a ordem do código importa
- Preparar o terreno para Call Stack e Event Loop
- Deixar de tratar a execução como “mágica”
JavaScript é uma linguagem interpretada
JavaScript não é compilado como C ou Java.
Ele é uma linguagem interpretada.
Isso significa que:
- O código é lido
- Interpretado
- E executado
- Tudo em tempo de execução
Mas isso não acontece de forma aleatória.
Execução acontece em duas grandes fases
Quando o JavaScript executa um arquivo, ele passa por duas fases principais:
- Fase de criação
- Fase de execução
Essa separação explica muitos comportamentos estranhos que vemos no dia a dia.
1️⃣ Fase de criação (preparação)
Antes de executar qualquer linha, o JavaScript:
- Registra funções
- Registra variáveis
- Cria o contexto de execução
É nessa fase que acontece o famoso hoisting.
Exemplo simples
console.log(nome);
var nome = "Daniel";
O que acontece aqui?
Durante a fase de criação:
- A variável
nomeé registrada - Mas seu valor ainda não é definido
Por isso, o resultado é:
console.log(nome); // Saída será undefined 2️⃣ Fase de execução
Depois da preparação, o JavaScript começa a executar o código:
- De cima para baixo
- Linha por linha
- Na ordem em que foi escrito
Agora os valores são atribuídos e as funções são chamadas.
Funções também entram na execução
Quando uma função é chamada, o JavaScript:
- Interrompe temporariamente a execução atual
- Cria um novo contexto
- Executa a função
- Retorna ao ponto anterior
Isso será essencial para entendermos o Call Stack.
Exemplo com função
function saudacao() { console.log("Olá!"); }
console.log("Antes");
saudacao();
console.log("Depois");
console.log("Antes"); // Saída: Antes
saudacao();
// Saída: Olá!
console.log("Depois");
// Saída: Depois
JavaScript executa uma coisa por vez
JavaScript é single-thread.
Isso significa:
- Uma tarefa por vez
- Uma execução por vez
- Sem paralelismo real
Por que isso importa?
Porque a partir daqui conseguimos entender:
- Por que callbacks existem
- Por que Promises existem
- Por que async/await existe
- Como o Event Loop funciona
Nada disso é mágica.
Resumo da aula para nunca mais esquecer
- JavaScript executa código em duas fases
- Primeiro prepara, depois executa
- A execução acontece linha por linha
- Funções criam novos contextos
- JavaScript executa uma coisa por vez
Na próxima aula, vamos entender o Call Stack e o Execution Context, dando nome e forma a tudo isso que vimos hoje.
HARDWARE
Entendendo o seu computador
O que há dentro do meu computador?
Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.
Você Sabia?
Space Invaders
A partida mais longa do clássico Space Invaders durou incríveis 38 horas e 32 minutos e esta façanha foi conseguida por um jogador de apenas 12 anos! O jogo, claro, podia ser pausado para alimentação e descanso, mas ainda assim o recorde, estabelecido no dia 02/09/1980, ainda não foi quebrado. Saiba mais.
Mario e seu bigode
O personagem Mario só possui bigode porque quando ele foi criado, em 1981, a resolução de tela dos equipamentos disponíveis não permitia que fosse desenhada uma boca, então os desenvolvedores fizeram o grande bigode para contornar essa limitação tecnológica.
Mario em Donkey Kong
O personagem Mario surgiu pela primeira vez no mundo dos games em um jogo chamado Donkey Kong, lançado em 1981. Mario, que naquela época se chamava Jumpman, não era o personagem principal do jogo, mas ele se tornaria um dos mais famosos personagens do mundo dos games. Saiba mais.
Recorde de patentes
A IBM detém o recorde de patentes em um único ano, atingindo a marca de 4186 registros no ano de 2008. Clique aqui e saiba mais sobre esta gigante do mundo da tecnologia.
Pac Man
Apenas no ano de 1982, o clássico Pac Man vendeu mais de 400 mil máquinas de fliperama em todo o mundo e recebeu cerca de 7 bilhões de moedas nestas máquinas. Saiba mais.










