How can we use Promise.race(iteratable)?
Promise.race is an interesting function. Instead of waiting for all promises to be resolved or rejected, Promise.race triggers as soon as any promise in the iteratable is resolved or rejected:
var req1 = new Promise(function(resolve, reject) {
// A mock async action using setTimeout
setTimeout(function() { resolve('First!'); }, 8000);
});
var req2 = new Promise(function(resolve, reject) {
// A mock async action using setTimeout
setTimeout(function() { resolve('Second!'); }, 3000);
});
Promise.race([req1, req2]).then(function(one) {
console.log('Then: ', one);
}).catch(function(one, two) {
console.log('Catch: ', one);
});
// From the console:
// Then: Second!
page revision: 1, last edited: 03 Feb 2018 06:25





