Junior
Jaka jest różnica między słowami kluczowymi async i await?
sobes.tech AI
Odpowiedź od AI
Kluczowa różnica między async a await w JavaScript (i innych językach obsługujących asynchroniczność) polega na ich przeznaczeniu i użyciu:
-
asyncto słowo kluczowe używane do deklarowania funkcji jako asynchronicznych. Taka funkcja zawsze zwraca Promise, nawet jeśli nie ma w niej jawnego zwracania Promise. -
awaitto operator używany wewnątrz funkcjiasyncdo oczekiwania na wynik Promise. Wstrzymuje wykonanie funkcji do czasu, aż Promise zostanie spełnione, i zwraca jego wynik.
Przykład:
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));
Tutaj async deklaruje funkcję fetchData jako asynchroniczną, a await pozwala pisać kod asynchroniczny w stylu synchronicznym, oczekując na zakończenie obietnic.