Si bien estoy totalmente de acuerdo con la respuesta aceptada en esta publicación SO, necesito saber si la recursividad asíncrona realmente crea una nueva pila de llamadas, ¿por qué muestra la acumulación de la pila de llamadas en el navegador en la siguiente captura de pantalla? Para ser justos, la pila de llamadas parece dejar de crecer después de 32 recursiones. Aquí está el código de muestra .
Mostrar pilas de llamadas asíncronas es una característica de las herramientas de desarrollo de Chrome. Puede apagarlo con shift + ctrl + p y seleccionando do not capture async stack traces .
En la salida de la consola en su imagen, el texto en negrita setTimeout(async) es donde comienza una nueva pila.
Async crea nuevas pilas.
Las herramientas de desarrollo de su navegador unen esos marcos asíncronos para usted como una conveniencia de depuración.
Puede desactivarlo en las preferencias de las herramientas de desarrollo; ver por ej. https://developer.chrome.com/blog/new-in-devtools-60/#async-stacks