Встречается на собеседованиях • сегодня
Можно ли в таймауте отловить ошибку через try-catch-finally
Нет, ошибки внутри setTimeout нельзя отловить через try-catch снаружи, так как колбэк выполняется асинхронно. Ошибка возникнет в другом контексте выполнения. Нужно обрабатывать ошибки внутри самого колбэка:
javascript
try {
setTimeout(() => {
try {
throw new Error('Ошибка в таймауте');
} catch (err) {
console.error('Поймали внутри:', err);
}
}, 1000);
} catch (err) {
// Сюда не попадём
console.error('Не сработает', err);
}Для современных асинхронных операций лучше использовать async/await с Promise.

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