闭包

作者: lassiey | 来源:发表于2019-06-10 17:44 被阅读0次

    闭包:解决变量的私有化问题
    全局变量:谁都可以访问,修改
    局部变量:有生命周期

    function add(){
        var counter = 0;    //局部变量-实现全局变量的生命力
        plus = function (){ //plus是全局函数
            counter++;
            console.log("counter = "+ counter); //全局变量的生命周期(伪全局变量)
        }
        
    }
    add();  //counter被初始化
    plus();
    plus();
    
    function add(){
        var counter = 0;    //局部变量-实现全局变量的生命力
        var plus = function (){ //plus是全局函数
            counter++;
            console.log("counter = "+ counter); //全局变量的生命周期(伪全局变量)
        }
        return plus;
    }
    var plus = add();   //counter被初始化
    plus();
    plus();
    
    function add(){
        var counter = 0;    //局部变量-实现全局变量的生命力
        return function (){ //plus是全局函数
            counter++;
            console.log("counter = "+ counter); //全局变量的生命周期(伪全局变量);
        };
    }
    var plus = add();   //counter被初始化
    plus();
    plus();
    
    //标准闭包
    //函数立即执行   函数声明核函数执行放在一起
    var plus = (function (){
        var counter = 0;    //局部变量-实现全局变量的生命力
        return function (){ //plus是全局函数
            counter++;
            console.log("counter = "+ counter); //全局变量的生命周期(伪全局变量);
        };
    })();
    
    plus();
    plus();
    

    相关文章

      网友评论

          本文标题:闭包

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