Назад к вопросам
Junior
146
questionbank

Что такое async/await и для чего они нужны?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

Async/await — это синтаксический сахар над промисами в JavaScript, который позволяет писать асинхронный код в синхронном стиле.

Они нужни для:

  1. Улучшения читаемости кода: Асинхронный код становится более последовательным и понятным, избегая "callback hell".
  2. Упрощения обработки ошибок: try...catch блоки работают с async/await так же, как и с синхронным кодом.
  3. Более легкой отладки: Поток выполнения более очевиден.

Ключевые моменты:

  • Функция, помеченная async, всегда возвращает промис.
  • Оператор await можно использовать только внутри async функции. Он приостанавливает выполнение async функции до тех пор, пока промис, к которому он применяется, не выполнится или не будет отклонен, а затем возвращает результат или выбрасывает ошибку.
// Пример использования async/await
async function fetchData() {
  try {
    const response = await fetch('https://api.example.com/data'); // Ожидаем выполнения промиса fetch
    const data = await response.json(); // Ожидаем выполнения промиса response.json()
    console.log(data);
  } catch (error) {
    console.error('Ошибка при получении данных:', error); // Обработка ошибок
  }
}

fetchData(); // Вызываем асинхронную функцию