易截截图软件、单文件、免安装、纯绿色、仅160KB

javascript 闭包问题

<script type="text/javascript">
    var name = "The Window";

   var object = {
    name : "My Object",

    getNameFunc : function(){
      return function(){
        return this.name;
      };
    }
   };
    alert(object.getNameFunc()());  //执行后的结果为:The Window
    </script>

  请教高手执行后的结果为什么会是The Window?
this指向的是window对象

楼上正解.不过我详细给你说明下好了

JScript code:

var name = "The Window";

   var object = {
    name : "My Object",

    getNameFunc : function(){
      return function(){ //如果这里直接return this.name,那得到这个return的handle是object

//对象,名字就是"My Object",但是你return了个function,所以下面调用的时候相当于是
//执行了window.getNameFunc()(),这里传入进去this就变成window的name对象,也就是全局变量
//"The Window.
        return this.name;
      };
    }
   };
alert(object.getNameFunc()()); //执行后的结果为:The Window



多谢高手的指教,csdn上的牛人真多!



  var name="The Window";

  var


相关问答:

急求一个在网页中验证用户输入的JavaScript代码

比如有一个textbox,用户输入后点button按钮时,实现用JavaScript对textbox输入信息的验证,比如验证用户输入的是否是数字。
希望将HTML代码一并写出来哈,谢谢。
HTML code:

<!DOCTYPE html PUBLIC &quo ......

新人javascript问题求助,请各位大哥大姐们来帮忙!

这是我的文本框
<input type="text" size="60" name="password_answer" id="pwdanswer" value="$!password_answer" >
提交按钮
<input clas ......

使用javascript中的dom来写代码,会的请进,急

HTML code:

<input type="button" value="11" onclick="test()" />
<tr>
<td >123</td>
<td>33</td>
</tr> ......

javascript 视频动态播放

HTML code:

<div>
<script type="text/javascript">
swfUrl="http://www.ndnews.cn/spnd/UploadFiles_7567/vod/news/090603/宁德市总工会慰问六一节 农民工子女.flv"
swft ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号