async await fiddle

by Jared Meadows

HTML

<pre id="console-log"></pre>

JavaScript

console = {
    log: (text) => {
    		const myDiv = document.createTextNode(text + '\n');
    		document.getElementById('console-log').append(myDiv);
        //$("#console-log").append($(consoleLine).html(text));
    }
};//*/

async function makeRequest (method, url) {
  //return new Promise(function (resolve, reject) {
  	return new Promise(function (resolve, reject) {
      var xhr = new XMLHttpRequest();
      xhr.open(method, url);
      xhr.onload = function () {
        if (this.status >= 200 && this.status < 300) {
          resolve(xhr.response);
        } else {
          reject({
            status: this.status,
            statusText: xhr.statusText
          });
        }
      };
      xhr.onerror = function () {
        reject({
          status: this.status,
          statusText: xhr.statusText
        });
      };
      xhr.send();
  });
}

// Example:
//console.clear();
console.log('before promise');
//debugger;

try {
	(async () => {
  	console.log('making 1st request');
  	const datum = makeRequest('GET', 'https://fiddle.jshell.net');
    console.log('making 2nd request');
    const other = makeRequest('GET', 'https://fiddle.jshell.net/.');
    [fRequest, sRequest] = [await datum, await other];
    console.log(fRequest.slice(0,190));
    console.log(sRequest.slice(0,190));
  })();
} catch (e) {
	console.log('Augh, there was an error!<br>' + e.statusText);
}


console.log('after promise');