Встречается на собеседованиях • сегодня
Получится ли отловить ошибку в функции внутри setTimeout через try-catch
Нет, ошибку внутри setTimeout нельзя отловить через try-catch, так как колбэк выполняется асинхронно, после завершения текущего стека вызовов. try-catch работает только для синхронного кода.
javascript
try {
setTimeout(() => {
throw new Error('Ошибка внутри таймаута');
}, 1000);
} catch (e) {
// Сюда управление не попадёт
console.log('Ошибка поймана:', e);
}Для обработки ошибок в асинхронных операциях используйте:
.catch()для промисов- Обработчики
unhandledrejectionиerrorна уровне window - Колбэки ошибок в Node.js (если используется)

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы