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

  • 相关阅读:
    Texture转Texture2D
    虚拟化 -- kvm简介
    虚拟化
    数据库
    openstack共享组件(1)------ NTP 时间同步服务
    openstack
    Linux基础命令
    第七章 Python文件操作
    第六章 Python流程控制
    老吴Python宝典之——Python字典&集合(第五章 )
  • 原文地址:https://www.cnblogs.com/ppyang/p/15541093.html
Copyright © 2011-2022 走看看