首页 > 其他分享 >防抖和节流

防抖和节流

时间:2023-01-07 22:45:15浏览次数:35  
标签:function 防抖 handle 节流 timeout var fn

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body style="height: 5000px;">
    <script>
        // 防抖
        function debounce(fn, wait) {
            var timeout = null;
            return () => {
                if (timeout !== null)
                    clearTimeout(timeout);
                timeout = setTimeout(fn, wait);
            }
        }
        // 截流
        function throttle(fn, delay) {
            var lastTime = 0; // 上一次函数触发的时间
            return () => {
                var nowTime = Date.now();
                if (nowTime - lastTime > delay) {
                    fn(); // method.apply(this) 看你用不用箭头函数
                    lastTime = nowTime;
                }
            }
        }
        //处理函数
        function handle() {
            console.log(Math.random());
        }


        // 滚动事件
        // window.addEventListener('scroll', handle, 1000);
        window.addEventListener('scroll', throttle(handle, 1000));
    </script>
</body>

</html>
</script>
</body>

</html>

 

标签:function,防抖,handle,节流,timeout,var,fn
From: https://www.cnblogs.com/z-bky/p/17033760.html

相关文章

  • vue2 lodash函数27 节流的函数、防抖的函数、操作数组的一系列函数、操作对象的一
    App.vue<keep-aliveinclude="Home"><router-view/></keep-alive>routerindex.jsimportVuefrom'vue'importVueRouterfrom'vue-router'importH......
  • 第十二章《文件与I/O流》第3节:字节流的使用
    ​字节流每次输入或输出一个字节的数据,下面的表12-4展示了java.io包下定义的字节流。表12-4字节流类​流类​用途​InputStream​字节输入流的父类​OutputStream​字节输出......
  • 手写防抖
    手写一个防抖防抖和节流都是依托定时器来完成的lettimer=nullinput1.addEventLister('keyup',function(){if(timer){clearTimeout(timer)}timer=......
  • JavaScript防抖与节流函数:提高应用性能的利器
    前言大家好,我是CoderBin,防抖和节流函数目前已经是前端实际开发中两个非常重要的函数,也是面试经常被问到的面试题。但是很多前端开发者面对这两个函数还是有点摸不着头脑:无......
  • 函数防抖和节流
    防抖和节流防抖和节流主要目的就是防止一个事件频繁触发或频繁使用DOM。比如scroll事件,滚动事件通常频繁触发,上一次回调没有执行完,下一次的事件就触发了,导致出现的页面抖......
  • java 字节流 字符流
    目录​​字节流​​​​带缓冲区的字节流​​​​字符流​​​​只解释输入流读取的过程,输出流同理​​字节流​​一个个的读取字节,然后打印到控制台​​带缓冲区的字节流​......
  • 字节流使用指南
    一切皆为字节一切文件数据(文本、图片、视频等)在存储时,都是以二进制数字的形式保存,都一个一个的字节,那么传输时一样如此。所以,字节流可以传输任意文件数据。在操作流的时......
  • JS防抖函数加强版
    JS防抖函数加强版debounce(fn,wait=500,immediate=false){lettimer=nulllettimer2=nulllettimes=0returnfunction(...args){......
  • Java 字节流数据拷贝性能测试
     packagecn.edu.lcudcc.byte_buffer_time;importjava.io.*;publicclassByteBufferTimeDemo{privatestaticfinalStringSRC_FILE="/Users/baoshan/Do......
  • java 字节流和字符流的区别
    字节流与和字符流的使用非常相似,两者除了操作代码上的不同之外,是否还有其他的不同呢?实际上字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,而字符流在操作时使用......