标题:关于闭包的问题
只看楼主
sclorg
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:55
专家分:152
注 册:2010-4-16
结帖率:90.91%
 问题点数:0 回复次数:0 
关于闭包的问题
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> New Document </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
  <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
  <script>
  $(function(){
    var t =function(i){
    $('#'+i).toggle(
            function(){alert(i)},function(){alert(i)}
        )
    }
    for(var i =0;i<2;i++){
        t.call(this,i)
    }
  })
  </script>
 </HEAD>
 <BODY>
  <div id='0'>dd1</div><div id='1'>dd2</div>
 </BODY>
</HTML>

把上面js换成
$(function(){
    for(var i =0;i<2;i++){
         $('#'+i).toggle(
            function(){alert(i)},function(){alert(i)}
        )
    }
  })

你会发现上下alert是不一样的,我觉得下面的代码会alert出来2是应为闭包的作用,但是上面这样写难道就没有闭包了吗?有懂得高人解释下吗
搜索更多相关主题的帖子: javascript function PUBLIC 
2011-06-23 16:42



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-343786-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.353212 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved