mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2024-11-14 13:16:28 +08:00
13 lines
332 B
JavaScript
13 lines
332 B
JavaScript
|
export function debounce(fn, wait){
|
||
|
let timer;
|
||
|
return function(...args){
|
||
|
if(timer) {
|
||
|
clearTimeout(timer); // clear any pre-existing timer
|
||
|
}
|
||
|
const context = this; // get the current context
|
||
|
timer = setTimeout(()=>{
|
||
|
fn.apply(context, args); // call the function if time expires
|
||
|
}, wait);
|
||
|
}
|
||
|
}
|