AutoCAD 3DMAX CÓïÑÔ Pro/E UG JAVA±à³Ì PHP±à³Ì Maya¶¯»­ MatlabÓ¦Óà Android
Photoshop Word Excel flash VB±à³Ì VC±à³Ì Coreldraw SolidWorks A Designer Unity3D
 Ê×Ò³ > JavaScript

Javascriptѧϰ̸̸֮JSµÄÈ«¾Ö±äÁ¿¸ú¾Ö²¿±äÁ¿(ÍÆ¼ö)

51×ÔÑ§Íø http://www.wanshiok.com
È«¾Ö±äÁ¿,¾Ö²¿±äÁ¿

½ñÌ칫˾һ¸öʵϰСÃÃ×ÓÎÊÎÒÁ½¶ÎJS´úÂëµÄÇø±ð£º

´úÂëÒ»£º

<script type="text/javascript"> var a = "Hello"; function test(){   var a;   alert(a);   a = "World";   alert(a); }</script>

´úÂë¶þ£º

<script type="text/javascript"> var a = "Hello"; function test(){   alert(a);   a = "World";   alert(a); }</script>

ÎÒÏ룬ºÃ¼òµ¥Ñ½£¬²»¾ÍÊÇÈ«¾Ö±äÁ¿¸ú¾Ö²¿±äÁ¿µÄscopeÎÊÌâÂð£¿ÎÒ˵:"µ±È«¾Ö±äÁ¿¸ú¾Ö²¿±äÁ¿ÖØÃûʱ£¬¾Ö²¿±äÁ¿µÄscope»á¸²¸ÇµôÈ«¾Ö±äÁ¿µÄscope£¬µ±À뿪¾Ö²¿±äÁ¿µÄscopeºó£¬ÓÖÖØ»Øµ½È«¾Ö±äÁ¿µÄscope¡£ËùÒÔÁ½¶Î´úÂëÔËÐеĽá¹û·Ö±ðΪ£º1) undefined World 2) Hello World¡£È»ºóÎÒËæÒâ±àÁËÈçÏÂÒ»¸öÀý×Ó¸øËý£º

<script>  var a =1;  function test(){    alert(a);    var a = 2;    alert(a);  }  test();  alert(a); </script>

´ó¼Ò²Â½á¹ûµÈÓÚ¶àÉÙ£¿ÊÇÊä³ö1 2 1 Âð£¿àÅàÅ£¬µ±ÎҰѲâÊÔcase·¢¸øËý֮ǰҲÊÇÕâôÈÏΪµÄ£¬µ«²âÊÔÊä³öºó¡­¡­ÔËÐнá¹ûÊÇ undefined 2 1¡£µ±Ê±°Ù˼²»µÃÆä½â£¬ÎÊÁ˹ÈÀÏʦ²ÅÖªµÀ£¬ÎÒ¶ÔJS»¹²»ÊǷdz£Á˽⣬ËùÒÔÍ´Ï¿๦£¬Ñ§Ï°+²âÊÔ£¬×ܽáÈçÏ£º

Ò»¡¢JavascriptµÄ±äÁ¿µÄscopeÊǸù¾Ý·½·¨¿éÀ´»®·ÖµÄ£¨Ò²¾ÍÊÇ˵ÒÔfunctionµÄÒ»¶Ô´óÀ¨ºÅ£û £ýÀ´»®·Ö£©¡£Çмǣ¬ÊÇfunction¿é£¬¶øfor¡¢while¡¢if¿é²¢²»ÊÇ×÷ÓÃÓòµÄ»®·Ö±ê×¼£¬¿ÉÒÔ¿´¿´ÒÔϼ¸¸öÀý×Ó£º

<script>function test2(){  alert ("before for scope:"+i);  // iδ¸³Öµ£¨²¢²»ÊÇδÉùÃ÷£¡Ê¹ÓÃδÉùÃ÷µÄ±äÁ¿»òº¯ÊýÈ«Å׳öÖÂÃü´íÎó¶øÖжϽű¾Ö´ÐУ©                          // ´ËʱiµÄÖµÊÇunderfined  for(var i=0;i<3;i++){    alert("in for scope:"+i); // iµÄÖµÊÇ 0¡¢1¡¢2, µ±iΪ3Ê±Ìø³öÑ­»·  }  alert("after for scope:"+i); // iµÄÖµÊÇ3£¬×¢Ò⣬´ËʱÒѾ­ÔÚfor scopeÒÔÍ⣬µ«iµÄÖµÈÔÈ»±£ÁôΪ3    while(true){    var j = 1;    break;  }  alert(j);  // jµÄÖµÊÇ1£¬×¢Ò⣬´ËʱÒѾ­ÔÚwhile scopeÒÔÍ⣬µ«jµÄÖµÈÔÈ»±£ÁôΪ1  if(true){    var k = 1;  }  alert(k); //kµÄÖµÊÇ1£¬×¢Ò⣬´ËʱÒѾ­ÔÚif scopeÒÔÍ⣬µ«kµÄÖµÈÔÈ»±£ÁôΪ1}test2();//ÈôÔÚ´Ëʱ£¨function scopeÖ®Í⣩ÔÙÊä³öÖ»´æÔÚÓÚtest2 Õâ¸öfunction scopeÀïµÄ i¡¢j¡¢k±äÁ¿»á·¢ÉúÉñÂíЧ¹ûÄØ£¿alert(i); //error! û´í£¬ÊÇerror£¬Ô­ÒòÊDZäÁ¿iδÉùÃ÷£¨²¢²»ÊÇδ¸³Öµ£¬Çø·Ötest2º¯ÊýµÄµÚÒ»ÐÐÊä³ö£©£¬µ¼Ö½ű¾´íÎ󣬳ÌÐòµ½´Ë½áÊø£¡alert("ÕâÐдòÓ¡»¹»áÊä³öÂð£¿"); //δִÐÐalert(j); //δִÐÐalert(k); //δִÐÐ</script>

¶þ¡¢JavascriptÔÚÖ´ÐÐǰ»á¶ÔÕû¸ö½Å±¾ÎļþµÄÉùÃ÷²¿·Ö×öÍêÕû·ÖÎö(°üÀ¨¾Ö²¿±äÁ¿)£¬´Ó¶øÈ·¶¨Êµ±äÁ¿µÄ×÷ÓÃÓò¡£ÔõôÀí½âÄØ£¿¿´ÏÂÃæÒ»¸öÀý×Ó£º

<script>  var a =1;  function test(){    alert(a); //aΪundefined! Õâ¸öa²¢²»ÊÇÈ«¾Ö±äÁ¿£¬ÕâÊÇÒòΪÔÚfunction scopeÀïÒѾ­ÉùÃ÷ÁË£¨º¯ÊýÌåµ¹ÊýµÚ4ÐУ©Ò»¸öÖØÃûµÄ¾Ö²¿±äÁ¿,           //ËùÒÔÈ«¾Ö±äÁ¿a±»¸²¸ÇÁË£¬Õâ˵Ã÷ÁËJavascriptÔÚÖ´ÐÐǰ»á¶ÔÕû¸ö½Å±¾ÎļþµÄ¶¨Ò岿·Ö×öÍêÕû·ÖÎö,ËùÒÔÔÚº¯Êýtest()Ö´ÐÐǰ,           //º¯ÊýÌåÖеıäÁ¿a¾Í±»Ö¸ÏòÄÚ²¿µÄ¾Ö²¿±äÁ¿.¶ø²»ÊÇÖ¸ÏòÍⲿµÄÈ«¾Ö±äÁ¿. µ«ÕâʱaÖ»ÓÐÉùÃ÷£¬»¹Ã»¸³Öµ£¬ËùÒÔÊä³öundefined¡£    a=4        alert(a); //aΪ4,ûÐüÄîÁ˰ɣ¿ ÕâÀïµÄa»¹ÊǾֲ¿±äÁ¿Å¶£¡    var a;   //¾Ö²¿±äÁ¿aÔÚÕâÐÐÉùÃ÷    alert(a); //a»¹ÊÇΪ4,ÕâÊÇÒòΪ֮ǰÒѰÑ4¸³¸øaÁË  }  test();  alert(a); //aΪ1£¬ÕâÀï²¢²»ÔÚfunction scopeÄÚ£¬aµÄֵΪȫ¾Ö±äÁ¿µÄÖµ</script>

Èý£¬µ±È«¾Ö±äÁ¿¸ú¾Ö²¿±äÁ¿ÖØÃûʱ£¬¾Ö²¿±äÁ¿µÄscope»á¸²¸ÇµôÈ«¾Ö±äÁ¿µÄscope£¬µ±À뿪¾Ö²¿±äÁ¿µÄscopeºó£¬ÓÖÖØ»Øµ½È«¾Ö±äÁ¿µÄscope£¬¶øµ±È«¾Ö±äÁ¿ÓöÉϾֲ¿±äÁ¿Ê±£¬ÔõÑùʹÓÃÈ«¾Ö±äÁ¿ÄØ£¿ÓÃwindow.globalVariableName¡£

<script>  var a =1;  function test(){      alert(window.a); //aΪ1,ÕâÀïµÄaÊÇÈ«¾Ö±äÁ¿Å¶£¡    var a=2;   //¾Ö²¿±äÁ¿aÔÚÕâÐж¨Òå    alert(a); //aΪ2,ÕâÀïµÄaÊǾֲ¿±äÁ¿Å¶£¡  }  test();  alert(a); //aΪ1£¬ÕâÀï²¢²»ÔÚfunction scopeÄÚ£¬aµÄֵΪȫ¾Ö±äÁ¿µÄÖµ</script>

µ±È»¸ü¶àµÄÎÄÕ¿ÉÒԲο¼ÏÂÃæµÄÏà¹ØÎÄÕ¡£


È«¾Ö±äÁ¿,¾Ö²¿±äÁ¿ ¡¡
ÉÏһƪ£º¹ØÓÚJavascript»Øµ÷º¯ÊýµÄÒ»¸öÃîÓà ÏÂһƪ£ºÀûÓÃjQueryµÄ¶¯»­º¯ÊýanimateʵÏÖÍã¶¹·¢ÉäЧ¹û