code: function PromiseRace(iterable) {
    if (!IS_RECEIVER(this)) {
      throw MakeTypeError(kCalledOnNonObject, PromiseRace);
    }
  
    var deferred = NewPromiseCapability(this);
    try {
      for (var value of iterable) {
        this.resolve(value).then(deferred.resolve, deferred.reject);
        SET_PRIVATE(deferred.reject, promiseCombinedDeferredSymbol, deferred);
      }
    } catch (e) {
      deferred.reject(e)
    }
    return deferred.promise;
  }
docs: ES#sec-promise.race Promise.race ( iterable )