美文网首页
aaa.防抖和节流

aaa.防抖和节流

作者: BabyMT | 来源:发表于2020-06-22 16:00 被阅读0次

1. 防抖

防抖是多次执行变为最后一次执行

function debounce() {
  timer = null;
  return function () {
      if (timer) {
          clearTimeout(timer);
          timer = null;
      }
      timer = setTimeout(function () {
        console.log('boom')
      }, 2000)
  }
}
var run = setInterval(debounce(),1000)    //只执行最后一次
setTimeout(()=>{
  clearInterval(run)
},5000)

这种事简略写法,节流某函数写法如下

function debounce(fn, wait) {
  timer = null;
  return function () {
      var context = this
      var args = arguments
      if (timer) {
          clearTimeout(timer);
          timer = null;
      }
      timer = setTimeout(function () {
          fn.apply(context, args)   //节流fn函数
      }, wait)
  }
}
var fn = function () {
  console.log('boom')   //do something
}
var run = setInterval(debounce(fn,2000),1000)
setTimeout(() =>{
  clearInterval(run)
},5000)

2. 节流

节流是多次执行变成每隔一段时间执行一次

function throttle(fn, gapTime) {
  let _lastTime = null;
  return function () {
    let _nowTime = + new Date()
    if (_nowTime - _lastTime > gapTime || !_lastTime) {
      fn();
      _lastTime = _nowTime
    }
  }
}
let fn = ()=>{
  console.log('boom')
}
var run = setInterval(throttle(fn,2000),10)
setTimeout(() => {
  clearInterval(run)
}, 10000);

fn函数实现节流,本来10ms触发一次变成2000ms触发一次

ps:防抖是多次执行变为最后一次执行,节流是多次执行变成每隔一段时间执行一次,节流会稀释执行频率

相关文章

  • aaa.防抖和节流

    1. 防抖 防抖是多次执行变为最后一次执行 这种事简略写法,节流某函数写法如下 2. 节流 节流是多次执行变成每隔...

  • 谈谈js中的节流和防抖函数

    关于节流和防抖,这篇文章说的很好了,深入lodash源码分析防抖和节流深入篇 | Lodash 防抖和节流是怎么实...

  • JavaScript防抖和节流

    1. 认识防抖和节流 1.1. 对防抖和节流的认识 防抖和节流的概念其实最早并不是出现在软件工程中,防抖是出现在电...

  • 前端性能优化-浅谈js防抖和节流

    浅谈js防抖和节流

  • Javascript 基础

    1、函数防抖和函数节流 【《javascript高级程序设计》里,函数节流是这里讲的函数防抖。】函数防抖: 在事件...

  • js 防抖 节流

    节流 防抖1 防抖2

  • 2019-03-27

    js的防抖和节流 据我所知防抖和节流都是为了优化作用,减轻浏览器和服务端的负担,防抖和节流俩个的英文要记住: de...

  • js的防抖和节流

    js的 防抖(debounce)和 节流(throttle ) 防抖和节流一般用于高频触发事件,属于浏览器性能优化...

  • 手写防抖和节流函数实现

    1. 认识防抖和节流函数 防抖和节流的概念其实最早并不是出现在软件工程中,防抖是出现在电子元件中,节流出现在流体流...

  • 实现防抖和节流

    一、认识防抖和节流函数 防抖和节流的概念其实最早并不是出现在软件工程中,防抖是出现在电子元件中,节流出现在流体流动...

网友评论

      本文标题:aaa.防抖和节流

      本文链接:https://www.haomeiwen.com/subject/ctwatktx.html