Logo
Unit 3 – Async/Await

Async/Await

Duration: 8 minutes

Hello again, coding aficionados!

Having delved into the realm of Promises, let’s introduce you to a syntactic sugar that makes working with Promises even more elegant: the async/await pattern. With this modern approach, you can write asynchronous code that looks and behaves a bit more like traditional synchronous code, leading to cleaner and more readable scripts.

Understanding Async/Await

The async/await pattern is built on top of Promises and brings a new perspective to asynchronous operations. Here’s what you need to know:

  • async Keyword: When placed before a function declaration, it ensures that the function returns a Promise. Even if you return a value, it’ll be wrapped inside a Promise.
  • await Keyword: Used only within an async function, it makes the function execution wait till the Promise settles and then proceeds with the result (or error).

Example without async/await:

function fetchData() {
return new Promise((resolve) => {
setTimeout(() => {
resolve("Data fetched!");
}, 2000);
});
}
fetchData().then(data => console.log(data));

With async/await:

async function fetchDataAndDisplay() {
const data = await fetchData();
console.log(data);
}
fetchDataAndDisplay();

Exercise

Recall the fetchData function from our previous module. Now, let’s modify the way we handle this function using async/await:

  • Create an async function named displayData.
  • Within this function, use await to wait for the fetchData Promise to resolve.
  • Handle potential errors using a try/catch block around your await statement.
  • Finally, invoke your displayData function to see the results.

Hint for the exercise:

async function displayData() {
try {
const data = await fetchData();
console.log(data);
} catch (error) {
console.error("There was an error fetching the data:", error);
}
}
displayData();

Conclusion

Bravo! You’ve just unlocked the power of async/await, making your asynchronous JavaScript journey even more smooth and intuitive. This pattern not only makes code more readable but also simplifies error handling. As you further explore the landscape of JavaScript, you’ll find async/await indispensable for crafting beautiful asynchronous routines.

Happy coding, and till our next encounter!

Next Tutorial: Intermediate DOM Manipulation & Events

8 minutes Minutes

Continue

Code on the Go with our Mobile App!

Unleash your coding potential anytime, anywhere!

Download Now!