async и await — это синтаксический сахар в JavaScript, предназначенный для упрощения работы с промисами и асинхронными операциями. Они позволяют писать асинхронный код, который выглядит как синхронный, улучшая его читаемость и удобство использования.🚩Основные концепции
🟠`async`
Ключевое слово, которое используется перед функцией для обозначения её как асинхронной. Асинхронная функция всегда возвращает промис.
🟠`await`
Ключевое слово, которое используется внутри асинхронной функции для ожидания выполнения промиса. Оно приостанавливает выполнение функции до тех пор, пока промис не будет выполнен.
🚩Пример использования для асинхронных запросов
Пример с
fetch// Асинхронная функция для выполнения запроса и обработки данных
async function fetchData(url) {
try {
// Ожидание выполнения запроса
const response = await fetch(url);
// Проверка статуса ответа
if (!response.ok) {
throw new Error('Network response was not ok');
}
// Ожидание преобразования ответа в JSON
const data = await response.json();
// Работа с данными
console.log(data);
} catch (error) {
// Обработка ошибок
console.error('Fetch error:', error);
}
}
// Вызов асинхронной функции
fetchData('https://api.example.com/data');
1⃣Объявление асинхронной функции
async function fetchData(url) { ... } 2⃣Использование
await для ожидания выполнения запросаconst response = await fetch(url);
3⃣Обработка ошибок с использованием
try...catchtry {
...
} catch (error) {
...
} 4⃣Ожидание преобразования ответа в JSON
const data = await response.json();
🚩Плюсы
➕Читаемость
Код выглядит как синхронный, что упрощает его понимание и сопровождение.
➕Управление ошибками
Использование блоков
try...catch делает обработку ошибок более явной и удобной.➕Последовательность выполнения
синхронные операции выполняются в логической последовательности, что упрощает написание сложных асинхронных цепочек.
Ставь 👍 и забирай 📚 Базу знаний