欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【前端面试】防抖节流

程序员文章站 2022-06-09 21:40:33
...

参考链接:函数的防抖和节流是个啥???

防抖

n秒内函数只会执行一次,如果n秒内事件再次被触发则重新计时

function debounce(func, delay){
  let timeout;
  return function() {
    clearTimeout(timeout)
    timeout = setTimeout(()=>{
      func.applay(this, arguments)
    }, delay);
  }
}

节流

n秒内函数只会执行一次

function throttle(func, delay){
  let trigger = true;
  return function() {
    if (!trigger){
      return //如果关闭了,那就不执行代码了
    }
    trigger = false;
    setTimeout(()=>{
      func.apply(this, arguments)
      trigger = true
    }, delay)
  }
}
相关标签: 前端面试