js 闭包

原创
2015/01/14 23:02
阅读数 19
看js闭包,有人出了这个问题, http://www.jb51.net/article/24101.htm 在这看到的,有兴趣的可以瞅瞅。
var name = "The Window";   
  var object = {  
    name : "My Object",  
    getNameFunc : function(){  
      return function(){  
        return this.name;  
     };   
    }   
};  

object.getNameFunc()();

这个结果是The Window,没怎么看明白

var name = "The Window";   
  var object = {  
    name : "My Object",  
    getNameFunc : function(){  
      return this.name;  
    }   
};  
object.getNameFunc()

这个打印出来是My Object


后来看了一下this的解释,匿名函数的执行对象都是window,而在第二个例子中getNameFunc的对象是object

所以打印出来的值不一样



感觉有点忽悠,因为例子这个跟闭包好像没什么关系。把this去了算是一个闭包例子。不知道我理解的对不对?


展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部