Встречается на собеседованиях • сегодня

В чем разница между написанием функции через await и через Promise

await и Promise — это два способа работы с асинхронным кодом, но они отличаются синтаксисом и подходом.

Promise использует цепочку .then() и .catch():

javascript
fetchData()
  .then(data => processData(data))
  .then(result => console.log(result))
  .catch(error => console.error(error));

await работает внутри async-функций и делает код более линейным:

javascript
async function handleData() {
  try {
    const data = await fetchData();
    const result = await processData(data);
    console.log(result);
  } catch (error) {
    console.error(error);
  }
}

Различия:

  1. await упрощает чтение кода, избавляя от цепочек .then().
  2. await требует обертки в async-функцию.
  3. Ошибки в Promise ловятся через .catch(), а в await — через try/catch.
  4. await приостанавливает выполнение функции до разрешения промиса, тогда как Promise продолжает выполнение.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы