• 闭包应用-函数防抖


    // 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

  • 相关阅读:
    ASP.NET Session
    表格导入和导出
    C#根据当前时间获取其他时间
    SuperGridControl全局设置
    无框窗体移动
    窗体在屏幕边缘隐藏
    comboBoxEx
    CROSS JOIN
    supergirdcontrol单元格添加控件
    ADVtree
  • 原文地址:https://www.cnblogs.com/ppyang/p/15541093.html
Copyright © 2020-2023  润新知