Por que é necessária a programação assíncrona

O JavaScript é uma linguagem de thread único e as operações demoradas como solicitações de rede, leitura e escrita de arquivos devem ser executadas assíncronamente, caso contrário a interface ficará bloqueada.

O problema do inferno

Códigos de chamada de volta anidados de várias camadas são difíceis de manter.

Três Promesas

  • pending : Em andamento
  • fulfilledSucesso:
  • rejected : Falha
fetch('/api/user').then(res => res.json()).then(data => console.log(data)).catch(err => console.error(err));

Async/await Açúcar

A introdução do ES2017 faz com que o código assíncrono pareça sincronizado:

async function loadUser() {

Execução paralela

Várias solicitações independentes são executadas em paralelo com o Promise.all.

Armadilhas comuns

  • Esquecer await leva a obter o objeto Promise em vez do resultado
  • O uso errado do await no loop resulta na execução serial
  • Falta de try/catch resulta em exceção não capturada

Aviso: os artigos deste site vêm de conteúdo original, republicações, geração por IA e outras fontes. Se houver problemas de direitos autorais ou outras questões, por favor,envie seu feedback, e nossa empresa verificará e resolverá prontamente.