This is an in-depth look at the Async/Await feature in JavaScript.
Code: https://github.com/eXtremeXR/Async-Await
First, we’re going to go through brief history of asynchronous programming in JavaScript and see how it transitioned from callbacks to promises to generators and to finally Async/Await.
Then we’re going to focus purely on Async/Await and we’ll go through a bunch of examples.
We’ll start off by learning how we can do sequential flow using Async/Await and we’ll also see how we need to be careful about error handling.
Next, we’ll move onto parallel execution. We’ll see how we can use Promise.all() function to be able to execute multiple promises in parallel. Again, we’ll see why we need to be careful about our error handling.
Last but not least, we’ll take a look at how we can do iterations with Async/Await. We’ll start off with for loop, then move onto forEach, for of loop is going to be next and finally we’ll wrap that section with while loop.
At the end, we’ll do a quick recap of the things we just went through.
⭐️Contents ⭐️
⌨️ 0:00 – Introduction
⌨️ 1:28 – Callbacks Example
⌨️ 6:44 – Promises Example
⌨️ 9:40 – Async/Await Example
⌨️ 13:18 – Coding Examples Begin
⌨️ 14:09 – Sequential Example (Naive)
⌨️ 19:27 – Sequential Example (Issue)
⌨️ 21:18 – Sequential Example (Solution)
⌨️ 23:48 – Parallel Example (Naive)
⌨️ 27:21 – Parallel Example (Issue)
⌨️ 28:58 – Parallel Example (Solution)
⌨️ 31:55 – For Loop Example
⌨️ 36:49 – ForEach Example
⌨️ 40:06 – For-Of Example
⌨️ 42:06 – While Loop Example
⌨️ 44:03 – Recap
Tutorial from CodeWorkr. Check out the CodeWorkr channel for more great tutorials: https://www.youtube.com/channel/UCfYTu_qAO5T7a-8rC_74Ypw
—
Learn to code for free and get a developer job: https://www.freecodecamp.org
Read hundreds of articles on programming: https://medium.freecodecamp.org
And subscribe for new videos on technology every day: https://youtube.com/subscription_center?add_user=freecodecamp
Original source
27 responses to “Async/Await – JavaScript Tutorial”
Hey everyone, original author here! 👋
I'm super humbled that freeCodeCamp has reached out to me and asked me for this video.
Hope you'll enjoy this video! If you like it and would like to see more of similar content – you can, of course, check out my channel.
Regarding audio quality and my pronunciation of English – this is one of my older videos and I'd like to think that both things have improved over time. Improving English (as a non-native speaker) in particular is more of a life-long journey (as is programming!).
Would be happy to answer any questions you might have!
nice one!!
38:57 Try adding async before powerPlant, so it will be like this powerPlants.forEach(async powerPlant => {
you're such a legend. thanks for this video!
what are the package.json files?
Just a little note, you didn't declare variables in for-of loops, which is a bad practice.
in sequential-naïve-proceses.js, are process01 and process02 functions? How re they declared as functions without the function keyword?
Really awesome tutorial! Thx
Please make a tutorial on recursion in javascript with many examples and explanation please thanks ..
Thanks, CodeWorkr. I learned a lot. What editor are you using?
Excellent video! Very well prepared and demonstrated. The little hint about async/await not working with functions using a callback themselves was awesome. That was my main point, why I still struggled. Thanks a lot!
nice…
Awesome work really.
Hi please do a course on redux. Love the long crash courses. They are great
the narrator was unlistenable, sorry
the only useful thing in the video is the promise all function, that actually shows performance benefit. what's the point of using async/await sequencially? take note that it can even degrade performace running sequencially because of the extra overhead.
Generators make my head hurt
Thank you
I love You! 😉
Thanks mate for great explanation. But please please please improve your English pronunciation – it's painful to listen.
Async is amazing, thanks for the wonderful breakdown!
import asyncio
oops wrong video, cya!
Big Like before watch
Great channel ==> awesome videos
Keep going guys!
https://github.com/jashanbansal0708/amazing-repositories
Explore this guys, it will help you!
Nice!
Just now that I'm learning Javascript. Thanks a lot guys!
Heart