Asynch Function - Example

<!--

CLEANER WAY OF ASYNCH FUNCTION

In this example. Function B will wait for A to complete. Supported in node js 8.1 onwards.

-->

<html>

<script>

var d = new Date();

var n = 3000 + d.getTime(); //Add 3 seconds to current date

var counter = 1;

function a() {

let promise = new Promise(function (resolve, reject) {

setTimeout(function () {

console.log("Function A completed in " + (new Date() - d) + "ms /" + new Date())

counter = 2;

resolve(counter);

}, 3000);

});

return promise;

}

async function b() {

var x;

try {

x = await a();

console.log("Function B completes. Counter Value: " + counter + " / " + new Date());

} catch (error) {

console.log(error);

}

}

console.log("Starts at " + d);

b();

</script>

</html>