⚙️9.2.1 - O que é assíncrono?
Quando algo é assíncrono, significa que não acontece imediatamente, e não bloqueia o restante do código enquanto espera.
🧠 Exemplo tradicional:
Você liga para uma pizzaria e faz um pedido. Enquanto a pizza não chega, você continua fazendo outras coisas. Quando ela chega, você recebe uma notificação (o entregador toca a campainha).
→ Isso é assíncrono: você solicitou, esperou, mas não ficou parado esperando.
⏳ O que é uma Promise?
Uma Promise (promessa) é um objeto do JavaScript que representa um valor que ainda não está disponível, mas estará no futuro.
Ela pode estar em três estados:
pending
Aguardando o resultado
fulfilled
A operação foi bem-sucedida
rejected
A operação falhou (erro)
🔄 Como isso se conecta com o fetch()
?
fetch()
?A função fetch()
é assíncrona e retorna uma Promise.
Ou seja:
Ela não bloqueia o código enquanto espera a resposta do servidor.
Quando a resposta chega, você encadeia ações com
.then()
e trata erros com.catch()
.
✅ Versão moderna com async/await
🧠 Como funciona?
await
espera a Promise resolver, mas sem travar o restante do sistema.async
transforma a função para que você possa usarawait
dentro dela.
Exemplo com async/await:
async function buscarUsuario() {
try {
const response = await fetch('https://jsonplaceholder.typicode.com/users/1');
const data = await response.json();
console.log('Usuário:', data);
} catch (error) {
console.error('Erro:', error);
}
}
buscarUsuario();
🔎 Vantagens do async/await
:
Código mais limpo e fácil de entender
Evita o "efeito cascata" de muitos
.then()
🧷 Conclusão
JavaScript é uma linguagem que suporta operações assíncronas.
fetch()
retorna uma Promise, que é resolvida quando a resposta da API chega.Você pode lidar com ela de duas formas:
.then() / .catch() (modo tradicional)
async / await (modo moderno e mais legível)
Last updated