async function promiseRace(promises) { 
 console.log(await Promise.all(promises).then(results=>(results[0])));
}

const firstPromise = new Promise(function(resolve) {
  setTimeout(function(){
    resolve("firstPromise");
  }, 500);
});

const secondPromise = new Promise(function(resolve) {
  setTimeout(function(){
    resolve("firstPromise");
  }, 400);
});

const thirdPromise = new Promise(function(resolve) {
  setTimeout(function(){
    resolve("firstPromise");
  }, 300);
});

promiseRace([firstPromise,secondPromise,thirdPromise]);

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.15/lodash.min.js