Async / Await: O "Doce" Sintático
O que vais aprender nesta aula:
- Transformar Promises em código de aspeto síncrono
- Palavras-chave:
asynceawait - Tratamento de erros com
try...catch
🧠 Teoria (com Analogia e Contexto Real)
Antigamente, usávamos .then(). Funciona, mas pode ficar confuso. O async/await (lançado em 2017) é uma forma mais limpa de ler Promises.
⏯️ Analogia do Botão de Pausa
O await é como meter o comando "pausa" num videojogo.
A função pára PONTUALMENTE naquela linha, à espera que a promessa termine, e depois continua.
Importante: Só a função pára, o resto do site continua a funcionar!
💻 Prática (Antes e Depois)
Promessas (Antigo)
function buscarDados() {
fetch("url")
.then(res => res.json())
.then(data => {
console.log(data);
})
.catch(erro => {
console.error(erro);
});
}
Async/Await (Moderno)
async function buscarDados() {
try {
const res = await fetch("url");
const data = await res.json();
console.log(data);
} catch (erro) {
console.error(erro);
}
}
⚡ Mini-App: Pokédex Rápida
Procura um Pokémon pelo nome ou ID (ex: "pikachu", "ditto", "25").