Назад к вопросам
JuniorТеорияЧасто
Что выведет программа (строки через пробел)?
function f() {
try {
return "try";
} finally {
console.log("finally");
}
}
console.log(f());finally try
- Ждать только
try:returnне пропускаетfinally— блокfinallyвыполняется до того, как функция на деле отдаст значение. - Ждать
try finally:finallyвыполняется внутриf(), ещё до того, как вызывающий код получит"try", поэтомуfinallyпечатается первым.
- Что вернёт
f(), если в блокеfinallyтоже написатьreturn "finally";? - Выполнится ли
finally, если блокtryбросит ошибку, аcatchнет?