Debounce & Throttle Functions

What advanced feature does this implementation provide for async operations?
function createThrottledPromise(func, limit) {
  let lastResolved = 0;
  let pending = null;
  
  return async function(...args) {
    const now = Date.now();
    if (now - lastResolved >= limit) {
      lastResolved = now;
      return func.apply(this, args);
    }
    
    if (!pending) {
      pending = new Promise(resolve => {
        setTimeout(async () => {
          const result = await func.apply(this, args);
          pending = null;
          lastResolved = Date.now();
          resolve(result);
        }, limit - (now - lastResolved));
      });
    }
    return pending;
  };
}
Next Question (16/20)