µ±Ç°Î»Ö㺠´úÂëÃÔ >> JavaScript >> ΪʲôҪnewһϣ¿½â¾ö·½°¸
  Ïêϸ½â¾ö·½°¸

ΪʲôҪnewһϣ¿½â¾ö·½°¸

Èȶȣº174   ·¢²¼Ê±¼ä£º2012-03-19 22:03:05.0
ΪʲôҪnewһϣ¿
JScript code

                function Odemo(name)
                {
                    return this.name=name;
                }
                
                
                alert(Odemo('abc').name);    //ÏÔʾundefined
           alert(new Odemo('abc').name);    //ÏÔʾabc£¬ÎªÊ²Ã´ÒªnewһϲÅÓÐÖµ£¿



ÇóÖ¸µã¡£¡£¡£¡£¡£¡£¡£

------½â¾ö·½°¸--------------------
ÒòΪÀïÃæÓиöreturn ËùÒÔ

alert(Odemo('abc').name);
//Odemo('abc')µÄ½á¹ûÊÇthis.name¼´window.name
alert(window.name.name)µÄ½á¹ûµ±È»ÊÇundefined


 alert(new Odemo('abc').name);
//new Odemo('abc')µÄ½á¹ûÊÇ·µ»ØOdemoµÄÒ»¸öʵÀý£¬¶øʵÀý»¯Ê±thisÖ¸ÏòµÄÊÇʵÀýµÄ±¾Éí
ËùÒÔʵÀý.name µ±È»¾ÍÊÇabc

------½â¾ö·½°¸--------------------
1¡¢newÔËËã°Ñ¹¹Ô캯ÊýµÄÊý¾ÝÀàÐÍÓÉFunctionת»»ÎªObject£¬²¢À¦°ó¹¹Ô캯ÊýÄÚ²¿µÄthisÖ¸ÕëÖ¸¶¨µ½ObjectÉÏ¡£
2¡¢alert(Odemo('abc').name);¹ý³Ì£¬OdemoÊÇÒ»¸öÈ«¾Öº¯Êýµ÷Ó㬷µ»ØµÄÄÚ²¿thisÖ¸ÏòÈ«¾Ö¶ÔÏówindow£¬this.nameÏ൱ÓÚwindow.name£¬¶øwindowûÓж¨ÒånameÊôÐÔ£¬ËùÒÔSHOW ¡°undefined¡±¡£
3¡¢alert(new Odemo('abc').name);¹ý³Ì£¬Í¨¹ýnewÔËË㣬JS°ÑthisÖ¸Õë°ó¶¨µ½Á˸ú¯ÊýËù¹¹Ôì³öÀ´µÄ¶ÔÏóÉÏ£¬µ±È»SHOW ¡°abc¡±¡£
  Ïà¹Ø½â¾ö·½°¸