
Hector Roberto Cervantes Torres
PreguntaAlguien sabe si es necesario poner la función setTimeout para que su ejecución sea asíncrona en el caso de las promesas? o con las promesas ya no es necesario colocar la función setTieout?

Engelbert Fanor Juárez Bonilla
la funcion setTimeout se usa para simular el tiempo de respuesta de un servidor, como no estamos haciendo la petición a un servidor entonces la ejecucion se realizaria instantanea. Entonces con el setTimeout le estamos diciendo que espere un cierto tiempo para que me retorne la respuesta (como si estuvieramos esperando al servidor) y luego cuando se resuelva la promesa de que se resolvio (resolve o reject) correctamente entonces (.then) sigue la ejecucion de las siguientes promesas
Helí Fernando Jerez Rincón
Puedes crear promesas que no usen setTimeout.
el setTimeout es una forma de ejecutar código asíncrono que se ejecutara en el futuro y eso lo que hace es agregar la función que se envía en el setTimeout al EventQueue.

Derek Samuel Paúl Peña
Los SetTimeouts son necesarios para recorrer por ejemplo contadores o cosas así e imprimirlos poco a poco, pero en sí no son muy útiles todo el tiempo porque en primer lugar podemos entrar en un bucle infinito de ellos y empezar a llenar nuestra RAM, y en segundo lugar porque se puede dejar clausulas huérfanas que son funciones en la pila de tareas, las que si se deben utilizar la mayoría de las veces en procesos asíncronos tales como los callbacks, que si no se tiene cuidado con ellos nos pueden generar callbacks hell, por eso es mejor en tales casos utilizar promesas que ya ejecutan un papel de asíncrono.