Junior — Middle
Aký je rozdiel medzi konštrukciami async/await a Promise pri práci s asynchrónnym kódom v JavaScripte?
sobes.tech AI
Odpoveď od AI
Promise er hlutur sem táknar niðurstöðu asynchronous aðgerðar, sem getur verið fullnægt eða hafnað í framtíðinni. Hann gerir kleift að skrá meðhöndlara með aðferðum then() og catch().
async/await er syntaktískur sykur yfir Promise, sem gerir kleift að skrifa asynchronous kóða í stíl eins og synkron, sem gerir hann auðveldari í lestri og viðgerð.
Helstu munir:
- Promise krefst keðja then/catch til að meðhöndla niðurstöður og villur.
- async/await gerir kleift að nota lykilorðin await til að bíða eftir niðurstöðu Promise innan asynchronous fallar.
Dæmi:
// Promise
fetch(url)
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error));
// async/await
async function fetchData() {
try {
const response = await fetch(url);
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
}
}
fetchData();
Þannig einfaldar async/await vinnu með Promise, gerir kóðann línulegri og skiljanlegri.