zoukankan      html  css  js  c++  java
  • 闭包应用-函数防抖

    // global.js
    //let s;
    function a() {
        // 循环
        let c = null;
        // 触发状态 是否允许触发
        let d = false;
        // 状态修改 s函数在window下
        s = function() {
            d = !d;
        }
        // 执行方法
        function b(f, t = 1000){
            // 是否允许触发
            if(!d) {
                // 修改触发状态为不允许
                s();
                c = setTimeout(function(){
                    // 执行内容
                    f();
                    // 停止循环
                    clearTimeout(c)
                    // 清除循环
                    c = null;
                    // 修改触发状态为允许
                    s();
                }, t)
            };
        }
        return b;
    }


    export default {
      a: a(),
    }

    ..........

    // 使用

    import { a } from 'global.js'
    a(() => {...}, 1000)

    借鉴自阮一峰闭包资料:http://www.ruanyifeng.com/blog/2009/08/learning_javascript_closures.html

  • 相关阅读:
    Leetcode 127 **
    Leetcode 145
    Leetcode 144
    Leetcode 137
    Leetcode 136
    重写nyoj2——括号匹配
    堆排序
    Leetcode 150
    【转】个人最常用的Eclipse快捷键
    Ajax编程中,经常要能动态的改变界面元素的样式
  • 原文地址:https://www.cnblogs.com/ppyang/p/15541093.html
Copyright © 2011-2022 走看看