Обработка ошибок в async/await происходит с помощью конструкции try-catch. Если внутри функции, помеченной как async, происходит ошибка, то она будет выброшена в виде исключения. Для обработки ошибок можно использовать конструкцию try-catch, как в примере ниже:
async function getData() {
try {
const response = await fetch("https://example.com/data")
const data = await response.json()
return data
} catch (error) {
console.error(error)
return null
}
}В этом примере мы используем try-catch для обработки ошибок в асинхронной функции getData(). Мы отправляем запрос на сервер с помощью fetch и ожидаем завершения операции с помощью await. Если операция завершается успешно, то мы преобразуем ответ в формат json с помощью response.json() и возвращаем результат. Если операция завершается с ошибкой, то мы перехватываем исключение с помощью catch, выводим сообщение об ошибке в консоль и возвращаем null.
Кроме того, можно использовать метод finally для выполнения каких-либо действий после завершения операции, независимо от того, была ли она выполнена успешно или с ошибкой:
async function getData() {
try {
const response = await fetch("https://example.com/data")
const data = await response.json()
return data
} catch (error) {
console.error(error)
return null
} finally {
console.log("Request completed.")
}
}В этом примере мы добавили блок finally, который будет выполнен после завершения операции, независимо от того, была ли она выполнена успешно или с ошибкой. В данном случае мы выводим сообщение в консоль, указывающее на то, что запрос завершен.
Таким образом, для обработки ошибок в async/await можно использовать конструкцию try-catch, а также метод finally для выполнения каких-либо действий после завершения операции.