Me dan el código mencionado a continuación y me piden que imprima la consola después de 3 segundos: B y C después de A.
Lo intenté
setTimeout(main(),3000);Pero no obtengo salida.
function sleep(){ } function main(){ console.log('A'); // call after 3 sec console.log('B'); // call after 3 sec console.log('C'); } }setTimeout(main , 3000);eliminar la llamada de función '( )'
Cómo funciona setTimeout: especifica la función (como primer argumento) que se llamará después de su tiempo de espera (segundo argumento: 3000)
Por lo general, debe pasar la función por nombre a la función setTimeout sin llamarla.
setTimeout(main,3000);
setTimeout(main(), 3000) ejecutará main inmediatamente porque colocó el () después. Solo usa el nombre. setTimeout(main, 3000)
Además, querrá poner su tiempo de espera en las dos declaraciones de registro específicas que desea llamar más tarde, no en toda la función, o también puede registrar A fuera de la función principal y luego llamar a la función principal después del tiempo de espera.
function main() { console.log('A'); // call after 3 sec setTimeout(() => { console.log('B'); console.log('C'); }, 3000); } main();