函数节流:能够多次触发的操作,影响性能,通过定时器在一段时间内只能执行一次,比如,页面缩放的时候
// 函数的节流
function throttle(fn, interval) {
var canRun = true;
return function() {
var _this = this;
if(!canRun) {
return
}
canRun = false;
setTimeout(function() {
fn.apply(_this, arguments)
canRun = true;
}, interval || 500);
}
}
函数防抖:同函数节流很像,也是一段时间之内只能执行一次,比如,表单验证的时候
// 函数防抖
function debounce(fn, interval) {
var timer = null;
return function() {
clearTimeout(timer);
timer = setTimeout(() => {
fn.apply(this, arguments)
}, interval || 500)
}
}
网友评论