Я подумал про себя сегодня, хм, что происходит, когда ты делаешь Попробуйте/наконец
, и у меня нет ловить
Пункт, так какой вывод здесь?
const errorThrower = () => { throw new Error("i am an error"); }; const errorInvoker = () => { try { errorThrower(); console.log("errorInvoker"); } finally { console.log("finally"); } }; const catcher = () => { try { errorInvoker(); console.log("catcher"); } catch (error) { console.log("catcher caught the error"); } }; catcher();
Я думал, что результат будет:
finally catcher
Но на самом деле вывод:
finally catcher caught the error
В ERROUSINVOKER
, Try Block выполняет, и Ошибка бросает ошибку, а затем сразу после того, как ошибка выброшена, наконец -то выполняется, затем ловец ловит ошибку, которая
Ошибка бросить и журналы
ловец поймал ошибку .
Оригинал: “https://dev.to/mcrowder65/what-happens-when-you-only-write-try-finally-3cph”