当前位置: 代码迷 >> JavaScript >> js闭包的疑点
  详细解决方案

js闭包的疑点

热度:25   发布时间:2012-11-04 10:42:41.0
js闭包的疑问
<script>
var name = "The Window";
  var object = {
    name : "My Object",
    getNameFunc : function(){
      return function(){
        return this.name;
      };
    }
  };
  alert(object.getNameFunc()());
</script>  




上面结果为The Window

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

</script>


上面结果为My Object



疑问一:第一段代码怎么能访问到外面的nane
疑问二:alert(object.getNameFunc()()) ,为什么要两个括号?
  相关解决方案