Middle+
Wie man die try/catch-Struktur mit Promise zum Laufen bringt? Wie macht man Promise mit async/await synchron?
sobes.tech KI
Antwort von AI
Чтобы конструкция try/catch работала с Promise, нужно использовать ключевые слова async/await. Обычные Promise обрабатываются через методы .then() и .catch(), но для удобства и более читаемого кода можно обернуть вызов Promise в async функцию и использовать await, что позволяет писать асинхронный код в синхронном стиле.
Пример:
async function fetchData() {
try {
const response = await fetch('https://api.example.com/data');
const data = await response.json();
console.log(data);
} catch (error) {
console.error('Ошибка при загрузке данных:', error);
}
}
fetchData();
Здесь await "приостанавливает" выполнение функции до завершения Promise, а ошибки, возникающие внутри Promise, ловятся в блоке catch. Таким образом, Promise становится "синхронным" по восприятию, хотя под капотом остаётся асинхронным.