JSFiddle - React, Tailwind, and code Playground
by Sandeep Agrawal
HTML
<pre id="output"></pre>
JavaScript
let promise1 = new Promise((resolve, reject) => {
let request = new XMLHttpRequest();
request.open('GET', 'https://jsonplaceholder.typicode.com/todos/1');
request.send();
request.onreadystatechange = () => {
if (request.readyState === 4) {
console.log('jsonplaceholder API, request status: ' + request.status, ', readyState: ' + request.readyState);
resolve('jsonplaceholder API responded faster!');
}
}
});
let promise2 = new Promise((resolve, reject) => {
let request = new XMLHttpRequest();
request.open('GET', 'https://api.github.com/users/mojombo/repos');
request.send();
request.onreadystatechange = () => {
if (request.readyState === 4) {
console.log('GitHub API, request status: ' + request.status, ', readyState: ' + request.readyState);
resolve('GITHUB API responded faster!');
}
}
});
Promise.race([promise1, promise2]).then((message) => {
document.getElementById('output').innerHTML = message;
});