Async Await

Better in writing promise chain

by bhupendra negi

JavaScript

function getAjaxData(str, resolve, delay = 1000) {
  console.log("requesting via Promise..." + str);
  setTimeout(() => resolve(str), delay);
}

function makePromise(str, delay) {
  return new Promise((resolve, reject) => {
    getAjaxData(str, resolve, delay)
  })
}

async function asyncFun() {
  // requesting in parallel
  var p1 = makePromise('Hello', 1000);
  var p2 = makePromise('Bye !!', 500);
  // await will wait untill promise gets resolved before moving on  next line
  console.log('waiting for x...')
  // now no need for then as it has become synchonus code
  var x = await p1;
  console.log(x);
  console.log('waiting for y...')
  var y = await p2;
  console.log(y);
}
console.log("out from p1")

asyncFun();