ExpertiDict

JavaScript · Avançado · Inglês · Técnico

async generator

/əˈsɪŋk ˈdʒɛnəɹeɪtɚ/substantivo

Função declarada com async function* que usa yield e await, devolvendo um iterador assíncrono consumido com for await...of. Produz valores ao longo do tempo, um por vez.

Onde usar

Usado em paginação de APIs, leitura de streams e eventos. Em code review, é preferido a callbacks para fluxos de dados que chegam aos poucos.

Em código

async function* pags() {
  for (let p = 1; p <= 3; p++) {
    yield `pág ${p}`;
  }
}
for await (const x of pags()) {
  console.log(x); // em módulo ES
}

Exemplos

I wrapped the paginated API in an async generator.

Embrulhei a API paginada num async generator.

Use for await to consume an async generator.

Use for await para consumir um async generator.

Cuidado

Consumir com for...of comum: para async generators é obrigatório usar for await...of.

Sinônimos

gerador assíncrono

Veja também

Todos os termos de JavaScript