ExpertiDict

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

queueMicrotask

/ˈkjuˌmaɪkɹoʊtæsk/função

Função global que agenda um callback na fila de microtasks, para rodar assim que o código atual terminar, antes de timers e de eventos. Não cria promise.

Onde usar

Usada em bibliotecas para adiar trabalho sem criar uma promise. Em code review, também serve para tornar sempre assíncrona uma API que às vezes responde de forma síncrona.

Em código

function obter(cache, k, cb) {
  if (cache.has(k)) {
    queueMicrotask(() => cb(cache.get(k)));
  } else {
    setTimeout(() => cb('novo'), 10);
  }
}

Exemplos

Use queueMicrotask to make the cached path async too.

Use queueMicrotask para tornar assíncrono também o caminho do cache.

The queueMicrotask callback runs before any timer.

O callback do queueMicrotask roda antes de qualquer timer.

Cuidado

Usar para trabalho pesado: ele ainda roda antes da renderização e pode travar a interface.

Veja também

Todos os termos de JavaScript