throttle (target, method, args*, spacing, immediate) Arraypublic
Ensure that the target method is never called more frequently than the specified spacing period. The target method is called immediately.
function whoRan() {
console.log(this.name + ' ran.');
}
let myContext = { name: 'throttle' };
run.throttle(myContext, whoRan, 150);
// whoRan is invoked with context myContext
// console logs 'throttle ran.'
// 50ms passes
run.throttle(myContext, whoRan, 150);
// 50ms passes
run.throttle(myContext, whoRan, 150);
// 150ms passes
run.throttle(myContext, whoRan, 150);
// whoRan is invoked with context myContext
// console logs 'throttle ran.'
Parameters:
-
target
[Object] - target of method to invoke
-
method
Function|String - The method to invoke. May be a function or a string. If you pass a string then it will be looked up on the passed target.
-
args*
[Object] - Optional arguments to pass to the timeout.
-
spacing
Number - Number of milliseconds to space out requests.
-
immediate
Boolean - Trigger the function on the leading instead of the trailing edge of the wait interval. Defaults to true.
Returns:
-
Array - Timer information for use in cancelling, see `run.cancel`.
Please login to continue.