Até agora, sempre usamos await dentro de funções async.
Isso funciona muito bem — mas criava uma limitação artificial:
por que não posso usar await diretamente no arquivo?
O top-level await veio exatamente para resolver isso.
🎯 Objetivo da aula
Ao final desta aula, você será capaz de:
- Entender o que é top-level await
- Saber onde ele pode ser usado
- Usar
awaitfora de funções - Evitar erros comuns de ambiente
- Escrever módulos mais simples e legíveis
O problema antes do top-level await
Antes, se quiséssemos usar await, precisávamos fazer algo assim:
async function iniciar()
{
const resposta = await fetch("/api/dados");
const dados = await resposta.json();
console.log(dados);
}
iniciar();
Isso criava:
- funções artificiais
- mais indentação
- código menos direto
O que é top-level await?
Top-level await permite usar await:
diretamente no escopo principal de um módulo JavaScript.
Sem precisar envolver em uma função async.
Exemplo simples
const resposta = await fetch("/api/dados");
const dados = await resposta.json();
console.log(dados);
Isso agora é válido — desde que este arquivo seja um módulo.
Onde o top-level await funciona?
Ele funciona apenas em:
- arquivos JavaScript tratados como módulos
<script type="module">- módulos ES no Node.js
Exemplo no navegador
<script type="module"> const resposta = await fetch("/api/dados");
const dados = await resposta.json();
console.log(dados);
Aqui, o navegador entende que o código é modular e permite o uso de await.
O que acontece por baixo dos panos?
Quando você usa top-level await:
- o módulo é carregado
- a execução é pausada no
await - outros módulos aguardam a finalização
Exemplo com import dependente
Arquivo config.js:
export const config = await fetch("/config.json").then(r => r.json()); Arquivo app.js:
import { config } from "./config.js";
console.log(config);
// Saída será o conteúdo do config.json
O JavaScript garante que config esteja pronto antes do uso.
Vantagens reais
- menos código cerimonial
- arquivos mais legíveis
- fluxo linear de execução
- melhor organização de módulos
Cuidados importantes
Use top-level await com consciência:
- não abuse em módulos muito grandes
- evite esperas longas no carregamento inicial
- trate erros adequadamente
await no topo pode atrasar o carregamento de outros módulos. Comparação mental
awaitem função → controle local- top-level
await→ controle de módulo
Cada um tem seu lugar.
Resumo da aula para nunca mais esquecer
- Top-level await permite
awaitfora de funções - Só funciona em módulos
- Deixa o código mais direto
- Bloqueia apenas o módulo atual
- Deve ser usado com moderação
Na próxima aula, vamos conhecer estruturas especiais para memória e performance: WeakMap e WeakSet.
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?
Muitos aplicativos
Instalar vários aplicativos com o mesmo propósito, como editores de texto, reprodutores de músicas ou vídeos e até programas antívirus sobrecarregam o seu sistema operacional e ainda ocupam espaço desnecessário em seu HD. Tenha apenas um bom programa para cada função.
Ultima Online
Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras
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.
Nintendo Wii
Nos primeiros oito dias após o lançamento do console Nintendo Wii foram vendidas 600 mil unidades. Isso equivale a quase um por segundo e estes incríveis números são referentes às vendas apenas nos EUA!
Cuidados com o notebook
Utilizar seu notebook em camas, sofás ou qualquer superfície macia pode obstruir as entradas e saídas de ar, elevando a temperatura e provocando danos a diversos componentes. Utilize-o sempre sobre uma superfície rígida. Saiba mais aqui.










