Modern JavaScript ES6-ES13 (JS útmutató)

Az Async és Await hatékony használata JavaScript-ben

A bemutató összes videója Modern JavaScript ES6-tól ES13-ig (JS útmutató)

A programozás világában alapvető fontosságú, aszinkron műveleteket hatékonyan kezelni, hogy vonzó felhasználói élményt biztosítsunk. Különösen a JavaScript-ben számos lehetőség van erre. Az aszinkron műveletek kezelésének egyik legnépszerűbb módja az async/await konstrukció. Ez egy szintaktikai egyszerűsítést kínál, amely lehetővé teszi, hogy az aszinkron programozás világosabb és olvashatóbb legyen. Nézzük meg ebben az útmutatóban az async és await alapjait, és hogy hogyan javíthatják a kódolásodat.

A legfontosabb megállapítások

  • az async/await egy világosabb és egyszerűbb szintaxist biztosít az aszinkron műveletek kezelésére.
  • Az olyan függvény, amely az await kulcsszót használja, async-ként kell deklarálni.
  • az await hatékonyan vár a Promise teljesülésére, mielőtt a kód folytatódik.
  • A hibakezelés elegánsan valósítható meg try/catch blokkokkal.

Lépésről lépésre útmutató

Először győződj meg arról, hogy érted a Promises alapjait, mivel az async/await erre épít. Ha már ismered a Promises-t, most megbeszélhetjük az async/await használatát.

1. lépés: Késleltető funkció létrehozása

Indíts egy egyszerű funkcióval, amely egy ígéretet ad vissza, amely egy késleltetést szimulál. Íme egy példa egy delay nevű funkcióra.

Ez egy alapvető implementáció. Ezzel a funkcióval megadhatod a késleltetést milliszekundumban.

Az Async és Await hatékony használata JavaScriptben

2. lépés: Async és Await bevezetése

Most kihasználhatod az async/await előnyeit. Kezdj el egy olyan funkciót létrehozni, amely használja az async kulcsszót.

Ebben a kód-részletben a runDelay funkció használja az async kulcsszót, amely lehetővé teszi az await használatát. Ez azt jelenti, hogy a funkció végrehajtása megáll, amíg a delay funkció által visszaadott ígéret teljesül.

3. lépés: Az aszinkron funkció tesztelése

A működés teszteléséhez hívd meg a runDelay funkciót.

Ha futtatod a scriptet, látni fogod, hogy a konzol kiírja, hogy "Késleltetés indítása...", majd 2 másodpercig szünetel, végül pedig "Késleltetés befejezve." üzenetet jelenít meg.

4. lépés: Hibakezelés try/catch-tel

Ez gyakran előfordul a programozásban - hibák bármikor bekövetkezhetnek. Az async/await használatával a hibák kezelése try/catch segítségével egyszerűbbé válik.

Ha szeretnél hibákat elkapni, a runDelay funkciót a következőképpen módosíthatod:

A try/catch használatával el lehet kapni és meg lehet jeleníteni bármely hibát, amely az await delay(2000) végrehajtása során lép fel.

Az Async és Await hatékony használata JavaScriptben

5. lépés: A fetch használata async/await-tel

Egy másik gyakran használt eset az adatok lekérése a fetch API-val.

Ebben a példában a fetch segítségével egy hálózati kérést indítunk. Ismét az await-tel biztosíthatjuk, hogy megvárjuk a választ, mielőtt folytatnánk.

Összefoglalás - Async és Await: Lépésről lépésre útmutató

Ebben az útmutatóban megtanultad, hogyan kezelheted az aszinkron műveleteket világosabban az async/await konstrukcióval JavaScriptben. Láttad, hogyan hozhatsz létre egy késleltető funkciót, hogyan kezelheted a hibákat, és hogyan kérhetsz le adatokat hatékonyan a fetch API-val.

Használj ezt a szintaxist a jövőbeli projektjeidben, hogy a kódod olvashatóbbá és karbantarthatóbbá váljon!

Gyakran ismételt kérdések

Mi a különbség az async és az await között?Az async egy funkciót aszinkronként jelöl, ami azt jelenti, hogy ígéreteket ad vissza. Az await az ígéretek eredményére vár.

Amikor használjam az async/await-t?Használja, amikor aszinkron műveletekkel dolgozik, és azt szeretné, hogy a kódja tiszta és olvasható maradjon.

Használhatom az async/await-t minden böngészőben?Igen, de győződjön meg arról, hogy a használt böngésző támogatja a modern JavaScript szintaxist. Szükség esetén transzpilátorokat, például a Babel-t is használhatja.

Használhatom az await-t egy hagyományos funkcióban?Nem, ahhoz, hogy await-t használhass, a funkciónak, amelyben ez használva van, async-ként kell deklarálva lennie.

Mi történik, ha egy ígéret meghiúsul?Ha egy ígéret meghiúsul, egy hibaüzenet keletkezik, amelyet try/catch segítségével kezelhetünk.