闭包---

闭包 函数能够使用函数外定义的变量

var name="xiao A";
        //对象
        var obj={
            name:"xiao B",
            getName:function(){
                return function(){
                    return this.name;
                }
                
            }
        };
        alert(obj.getName()());//xiao A
        var k=obj.getName(); //此时执行的就是全局类型的了function(){return this.name;}
        alert(typeof k); //是一个function类型
        alert(k());  //再执行k(),相当于window.k()所以return this.name调用的就是全局的name了,也就是xiao A;

 

posted @ 2016-09-06 10:38  八bug哥哥  阅读(119)  评论(0编辑  收藏  举报