美文网首页
函数的节流与防抖

函数的节流与防抖

作者: 悲伤逆流成河09 | 来源:发表于2017-12-20 11:13 被阅读0次

    如果一个事件频繁触发多次,并且两次事件相隔事件比较短,则防抖函数使得对应的处理事件只触发一次。

    ```

    functiondebounce(fn, delay) {

        let timer=null

        return    function() {

            clearTimeout(timer)

            timer = setTimeout(() => {

                fn()

            }, delay)

        }

    }

    ```

    如果一个事件频繁触发多次,节流函数可以按照固定频率执行相应的处理事件

    ```

        function throttle(fn, threshold) {

            let timer

            let startTime = Date.now()

            return function() {

                let endTime = Date.now()

                clearTimeout(timer)

                if((endTime - startTime) >= threshold) {

                    fn()

                    startTime = endTime

                } else {

                    timer = setTimeout(() => {

                    fn()

                }, threshold)

            }

        }

    }

    ```

    相关文章

      网友评论

          本文标题:函数的节流与防抖

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