Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

142
Vistas
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 la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda