Встречается на собеседованиях • сегодня
В чем разница между генерацией async/await и Promise
async/await — это синтаксический сахар над Promise, который делает асинхронный код более читаемым и похожим на синхронный.
Ключевые различия:
- Читаемость:
async/awaitпозволяет избежать цепочек.then(), делая код линейным.javascript// Promise fetchData().then(data => process(data)).catch(err => console.error(err));
// async/await
try {
const data = await fetchData();
process(data);
} catch (err) {
console.error(err);
}
text
2. **Обработка ошибок:**
В `Promise` ошибки ловятся через `.catch()`, а в `async/await` — через `try/catch`.
3. **Возвращаемое значение:**
Функция с `async` всегда возвращает `Promise`, даже если внутри используется `return` с обычным значением.
**Нюансы:**
- `await` можно использовать только внутри `async`-функций.
- `async/await` не заменяет `Promise` полностью (например, `Promise.all` удобнее для параллельных запросов).
Итог: `async/await` упрощает работу с асинхронностью, но под капотом всё равно работают `Promise`.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы