闭包 闭包理解 闭包的应用实例

闭包 

形成闭包的条件:一个函数访问外部的变量就形成了闭包

用闭包的好处:

(1)可以通过闭包函数形成独立实例的变量

(2)不会造成全局污染

 代码调试,演示闭包形成过程

    

 

 闭包的深入应用

利用闭包原理封装对象缓存局部变量name的值,实现对name的get,set

        function Person(){
            var name='张三';//保障name属性的封装性,安全性
            return{
                getName:function(){ //匿名函数 闭包
                    return name;
                },
                setName:function(newName){//匿名函数 闭包
                    name=newName;
                }
            };
        }
        var p=Person();
        console.log(p.getName());
        p.setName('xxxxx');
        console.log(p.getName());

getName获取Person函数中的name,setName设置Person函数中的name

你可能感兴趣的:(前端,javascript)