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?
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.
Galaxy Game
As primeiras máquinas de fliperama do mundo a utilizarem moedas, chamadas de Galaxy Game, custavam mais de 20 mil dólares para serem produzidas. Saiba mais sobre elas aqui.
Tetris
O título Tetris detém o recorde de jogo mais adaptado de todos os tempos. No total foram mais de 60 plataformas diferentes que receberam alguma versão do quebra-cabeças criado por Alexey Pajitnov. Conheça mais sobre este incrível jogo clicando aqui.
PDP-1
O primeiro computador a conseguir rodar o jogo Spacewar era o PDP-1, que custava 120 mil dólares e pertencia ao Massachusetts Institute of Technology. O jogo demorou 200 horas para ser desenvolvido, em 1962, e seu criador foi um cientista da computação chamado Steve Russel.
ENIAC
O ENIAC, primeiro computador valvulado do mundo, possuía 17.000 válvulas, 500.000 pontos de solda, 30 toneladas de peso e ocupava uma área de 180 metros quadrados. Clique aqui e conheça mais sobre a história dos computadores.










