JavaScript · Middle · Запитання 52 з 75
Чому цей catch не обробляє відхилення?
async function load() {
try {
return fetchUser(); // returns a rejected promise
} catch (e) {
return null;
}
}- ✓Правильна відповідь: Проміс повертається без
await, тому відхиляється вже після виходу зtry; використовуйтеreturn await fetchUser() - 2
try/catchніколи не працює в async-функціях - 3
catchпрацює лише разом із блокомfinally
Пояснення
Усередині try конструкція return await чекає на результат, і відхилення кидається всередині блоку. Поза try/catch звичайний return promise підходить.