Sobes.tech
Junior

Каква е разликата между ключовите думи async и await?

sobes.tech AI

Отговор от AI

Основната разлика между async и await в JavaScript (и други езици с поддръжка на асинхронност) се състои в тяхната цел и използване:

  • async е ключова дума, която се използва за обявяване на функция като асинхронна. Такава функция винаги връща Promise, дори ако вътре няма явно връщане на Promise.

  • await е оператор, който се използва вътре в async функции за изчакване на резултата от Promise. Той спира изпълнението на функцията, докато Promise не бъде изпълнено, и връща неговия резултат.

Пример:

async function fetchData() {
  const response = await fetch('https://api.example.com/data');
  const data = await response.json();
  return data;
}

fetchData().then(data => console.log(data));

Тук async обявява функцията fetchData като асинхронна, а await позволява писането на асинхронен код в синхронен стил, очаквайки завършването на Promise-ите.