--- sidebar_position: 6 --- # Async/await По сути, это просто «синтаксический сахар» для получения результата промиса, более наглядный, чем `promise.then`. Ключевое слово `async` перед объявлением функции: 1. Обязывает её всегда возвращать промис. 2. Позволяет использовать await в теле этой функции. Ключевое слово `await` перед промисом заставит JavaScript дождаться его выполнения, после чего: 1. Если промис завершается с ошибкой, будет сгенерировано исключение, как если бы на этом месте находилось `throw`. 2. Иначе вернётся результат промиса. Вместе они предоставляют отличный каркас для написания асинхронного кода. Такой код легко и писать, и читать. Хотя при работе с `async/await` можно обходиться без `promise.then/catch`, иногда всё-таки приходится использовать эти методы (на верхнем уровне вложенности, например). Также `await` отлично работает в сочетании с `Promise.all`, если необходимо выполнить несколько задач параллельно.