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');