Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

147
Visualizações
process.nextTick vs queueMicrotask en commonJs y ESM. ¿Cuál es la orden de ejecución?

Imaginemos que tenemos un archivo que contiene el siguiente código JS:

 process.nextTick(()=>{ console.log('nextTick') }) queueMicrotask(()=>{ console.log('queueMicrotask') }) console.log('console.log')

y hemos configurado el sistema de módulos para "type": "commonjs" en nuestro paquete.json

¿Qué salida en la consola esperamos? La documentación oficial de Node.js dice:

La cola process.nextTick() siempre se procesa antes que la cola de microtareas dentro de cada turno del bucle de eventos de Node.js

Entonces, en la consola esperamos

 console.log nextTick queueMicrotask

Y eso funciona Hasta que cambie el sistema de módulos a "type": "module" . Después de ese cambio, constantemente se ejecuta queueMicrotask antes de process.nextTick . La salida de la consola es:

 console.log queueMicrotask nextTick

¿Alguien puede explicar ese comportamiento? Puedo suponer que ese comportamiento de alguna manera está relacionado con la evaluación del módulo y el proceso de ejecución y que nextTick queueMicrotask de alguna manera entra en diferentes eventos de ciclo, ya que el módulo implica una ejecución asíncrona (en el navegador), pero esa suposición es muy inestable y, desde mi punto de vista, es ilógico. Sin embargo, todavía no tengo una explicación plausible.

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda