Se o await serve justamente para aguardar o processamento da rotina, porque o bloco finaly abaixo é executado antes de dar a mensagem de erro?
![]( )
Se o await serve justamente para aguardar o processamento da rotina, porque o bloco finaly abaixo é executado antes de dar a mensagem de erro?
![]( )
Olá,
Em uma instrução try,catch,finaly,throw, a instrução finaly vai ser executada independente do resultado do try
Nesse link tem a especificação do try/catch: https://www.w3schools.com/js/js_errors.asp
O Finaly sempre vai ser executado independente do resultado do Try.
Pelo seu Log não da de ver na realidade quem foi lançado primeiro, o que vc tem é uma saída no terminal, a onde a saída padrão do programa aparece em cima, e o stack trace aparece em baixo.
Teria que fazer um programa mais espesifico para testar essa questão: Quem o terminal vai lançar primeiro a saida de um finaly ou o log do stack tracy.