Hay, si alguien entiende por qué aparece un aviso incluso antes de que se imprima la consola.
agradezco la ayuda
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>promptheadache</title> </head> <body> <script> console.log('i should appear first on the console') var promptInput = prompt('I\'m am here befor anything else') </script> </body> </html>Los console.log s son realmente asincrónicos en el sentido de que están sincronizados (como siempre en orden) pero realizan una llamada asincrónica.
prompt es una API muy antigua y una de las pocas que realmente bloquea la página, por lo que aunque aparece después de console.log , lo ve tan pronto como se llama.
Dicho esto, esto no es cierto para todas las consolas ni está garantizado, el console.log puede aparecer antes del prompt dependiendo de la implementación del navegador/consola.
Si desea obtener la consola antes del aviso, puede agregar setTimeOut-setTimeout() es una función asíncrona.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>promptheadache</title> </head> <body> <script> console.log('i should appear first on the console') setTimeout(() => {var promptInput = prompt('I\'m am here befor anything else') },5000) </script> </body> </html>