Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | 11x 27x 10x 10x 27x 27x 27x 27x 11x 2x 11x | /** * Debounce * @param {Function} func Function to run. * @param {Number} wait Time to wait between tries. * @param {Boolean} immediate Immediately call func. */ export default function debounce(func, wait, immediate) { let timeout; const debounced = function (...args) { const later = () => { timeout = null; if (!immediate) func.apply(this, args); }; const callNow = immediate && !timeout; clearTimeout(timeout); timeout = setTimeout(later, wait); if (callNow) func.apply(this, args); }; debounced.clear = function () { clearTimeout(timeout); }; return debounced; } |