Async/await in JavaScript : asynchronous behaviour of Javascript Part -4

For part 1, part 2 and part 3 of this series, see the following links https://truetocode.com/understanding-callbacks-and-callback-hell-in-javascript-asynchronous-behavior-of-javascript-part-1/697/ https://truetocode.com/understanding-promises-in-javascript-asynchronous-behavior-of-javascript-part-2/730/ https://truetocode.com/generator-functions-in-javascript-asynchronous-behavior-of-javascript-part-3/744/ In the previous three articles in this series, we learned about doing asynchronous operations with callbacks, promises, and generator functions. In ES8 or ES2017 , Javascript introduced a new kind of syntax called async/await, which makes it easier to do asynchronous operations. Async/await syntax is actually just syntactic sugar over promises and callbacks The following example shows the basic syntax for performing async/await operations. Here too, we use fetch function which returns a promise. Remember that this block of code is run on chrome 60. Earlier versions of Chrome do not support async/ await. fetch()  and  json() returns promise

Now using async/await

Both will produce output like  the following The fetch() here returns a promise so we await for fetch. The json() function also returns a promise so we await for that too. Here we can see that using the async/await made the code easier to read and understand. As you can see that async/await helps you to write code in a way that asynchronous code looks and behave a  more like synchronous code. On each await keyword, the function pauses as you can see in the below…

Generator Functions in JavaScript : asynchronous behaviour of Javascript Part -3

For part 1 and part 2 of this series, see the following links https://truetocode.com/understanding-callbacks-and-callback-hell-in-javascript-asynchronous-behavior-of-javascript-part-1/697/ https://truetocode.com/understanding-promises-in-javascript-asynchronous-behavior-of-javascript-part-2/730/   JavaScript version ES6/ES2017, a new kind of function called generator functions was introduced. These special functions help you to manage asynchronous operations with more ease. Generator functions can be paused and then continued. Generator functions are declared with an asterisk (*) and have a yield keyword which yields data. See the following example to see the proper syntax for using Generator functions.

  There is a next method in the generator function prototype. To get the value of the first yield we use the next() method.

    Here you can see that the response object has a key-value which gives the value of the yield and a done key which represents the status. Here in our example,  value will be 1 and done will be false. We have two yields in the generator function .next() gives false two times and a third time gives done as true. If you add a return to the generator function next() will have key done as true.

        Now, if a return is done before a yield

Here you can see that the second yield…

Share this page in social media platforms