ECMAScript Ò»ÔªÔËËã·û
Ò»ÔªÔËËã·ûÖ»ÓÐÒ»¸ö²ÎÊý£¬¼´Òª²Ù×÷µÄ¶ÔÏó»òÖµ¡£ËüÃÇÊÇ ECMAScript ÖÐ×î¼òµ¥µÄÔËËã·û¡£
delete
delete ÔËËã·ûɾ³ý¶ÔÒÔǰ¶¨ÒåµÄ¶ÔÏóÊôÐÔ»ò·½·¨µÄÒýÓá£ÀýÈ磺
var o = new Object;
o.name = "David";
alert(o.name); //Êä³ö "David"
delete o.name;
alert(o.name); //Êä³ö "undefined"
ÔÚÕâ¸öÀý×ÓÖУ¬É¾³ýÁË name ÊôÐÔ£¬Òâζ×ÅÇ¿ÖÆ½â³ý¶ÔËüµÄÒýÓ㬽«ÆäÉèÖÃΪ undefined£¨¼´´´½¨µÄδ³õʼ»¯µÄ±äÁ¿µÄÖµ£©¡£
delete ÔËËã·û²»ÄÜɾ³ý¿ª·¢Õß䶨ÒåµÄÊôÐԺͷ½·¨¡£ÀýÈ磬ÏÂÃæµÄ´úÂ뽫Òý·¢´íÎó£º
delete o.toString;
¼´Ê¹ toString ÊÇÓÐЧµÄ·½·¨Ãû£¬ÕâÐдúÂëÒ²»áÒý·¢´íÎó£¬ÒòΪ toString() ·½·¨ÊÇÔʼµÄ ECMAScript ·½·¨£¬²»ÊÇ¿ª·¢Õß¶¨ÒåµÄ¡£
void
void ÔËËã·û¶ÔÈκÎÖµ·µ»Ø undefined¡£¸ÃÔËËã·ûͨ³£ÓÃÓÚ±ÜÃâÊä³ö²»Ó¦¸ÃÊä³öµÄÖµ£¬ÀýÈ磬´Ó HTML µÄ <a> ÔªËØµ÷Óà JavaScript º¯Êýʱ¡£ÒªÕýÈ·×öµ½ÕâÒ»µã£¬º¯Êý²»ÄÜ·µ»ØÓÐЧֵ£¬·ñÔòä¯ÀÀÆ÷½«Çå¿ÕÒ³Ãæ£¬Ö»ÏÔʾº¯ÊýµÄ½á¹û¡£ÀýÈ磺
<a href="javascript:window.open('about:blank')">Click me</a>
Èç¹û°ÑÕâÐдúÂë·ÅÈë HTML Ò³Ãæ£¬µã»÷ÆäÖеÄÁ´½Ó£¬¼´¿É¿´µ½ÆÁÄ»ÉÏÏÔʾ "[object]"¡£TIY
ÕâÊÇÒòΪ window.open() ·½·¨·µ»ØÁËдò¿ªµÄ´°¿ÚµÄÒýÓá£È»ºó¸Ã¶ÔÏ󽫱»×ª»»³ÉÒªÏÔʾµÄ×Ö·û´®¡£
Òª±ÜÃâÕâÖÖЧ¹û£¬¿ÉÒÔÓà void ÔËËã·ûµ÷Óà window.open() º¯Êý£º
<a href="javascript:void(window.open('about:blank'))">Click me</a>
Õâʹ window.open() µ÷Ó÷µ»Ø undefined£¬Ëü²»ÊÇÓÐЧֵ£¬²»»áÏÔʾÔÚä¯ÀÀÆ÷´°¿ÚÖС£
Ìáʾ£ºÇë¼Çס£¬Ã»Óзµ»ØÖµµÄº¯ÊýÕæÕý·µ»ØµÄ¶¼ÊÇ undefined¡£
ǰÔöÁ¿/ǰ¼õÁ¿ÔËËã·û
Ö±½Ó´Ó C£¨ºÍ Java£©½èÓõÄÁ½¸öÔËËã·ûÊÇǰÔöÁ¿ÔËËã·ûºÍǰ¼õÁ¿ÔËËã·û¡£
ËùνǰÔöÁ¿ÔËËã·û£¬¾ÍÊÇÊýÖµÉÏ¼Ó 1£¬ÐÎʽÊÇÔÚ±äÁ¿Ç°·ÅÁ½¸ö¼ÓºÅ£¨++£©£º
var iNum = 10; ++iNum;
µÚ¶þÐдúÂë°Ñ iNum Ôö¼Óµ½ÁË 11£¬ËüʵÖÊÉϵȼÛÓÚ£º
var iNum = 10; iNum = iNum + 1£»
ͬÑù£¬Ç°¼õÁ¿ÔËËã·ûÊÇ´ÓÊýÖµÉϼõ 1£¬ÐÎʽÊÇÔÚ±äÁ¿Ç°·ÅÁ½¸ö¼õºÅ£¨--£©£º
var iNum = 10; --iNum;
ÔÚÕâ¸öÀý×ÓÖУ¬µÚ¶þÐдúÂë°Ñ iNum µÄÖµ¼õµ½ 9¡£
ÔÚʹÓÃǰ׺ʽÔËËã·ûʱ£¬×¢ÒâÔöÁ¿ºÍ¼õÁ¿ÔËËã·û¶¼·¢ÉúÔÚ¼ÆËã±í´ïʽ֮ǰ¡£¿¼ÂÇÏÂÃæµÄÀý×Ó£º
var iNum = 10; --iNum; alert(iNum); //Êä³ö "9" alert(--iNum); //Êä³ö "8" alert(iNum); //Êä³ö "8"
µÚ¶þÐдúÂë¶Ô iNum ½øÐмõÁ¿ÔËË㣬µÚÈýÐдúÂëÏÔʾµÄ½á¹ûÊÇ£¨"9"£©¡£µÚËÄÐдúÂëÓÖ¶Ô iNum ½øÐмõÁ¿ÔËË㣬²»¹ýÕâ´Îǰ¼õÁ¿ÔËËãºÍÊä³ö²Ù×÷³öÏÖÔÚͬһ¸öÓï¾äÖУ¬ÏÔʾµÄ½á¹ûÊÇ "8"¡£ÎªÁËÖ¤Ã÷ÒÑʵÏÖÁËËùÓеļõÁ¿²Ù×÷£¬µÚÎåÐдúÂëÓÖÊä³öÒ»´Î"8"¡£
ÔÚËãÊõ±í´ïʽÖУ¬Ç°ÔöÁ¿ºÍǰ¼õÁ¿ÔËËã·ûµÄÓÅÏȼ¶ÊÇÏàͬµÄ£¬Òò´ËÒª°´ÕÕ´Ó×óµ½ÓÒµÄ˳Ðò¼ÆËãÖ®¡£ÀýÈ磺
var iNum1 = 2; var iNum2 = 20; var iNum3 = --iNum1 + ++iNum2; //µÈÓÚ "22" var iNum4 = iNum1 + iNum2; //µÈÓÚ "22"
ÔÚÇ°ÃæµÄ´úÂëÖУ¬iNum3 µÈÓÚ 22£¬ÒòΪ±í´ïʽҪ¼ÆËãµÄÊÇ 1 + 21¡£±äÁ¿ iNum4 Ò²µÈÓÚ 22£¬Ò²ÊÇ 1 + 21¡£
ºóÔöÁ¿/ºó¼õÁ¿ÔËËã·û
»¹ÓÐÁ½¸öÖ±½Ó´Ó C£¨ºÍ Java£©½èÓõÄÔËËã·û£¬¼´ºóÔöÁ¿ÔËËã·ûºÍºó¼õÁ¿ÔËËã·û¡£
ºóÔöÁ¿ÔËËã·ûÒ²ÊǸøÊýÖµÉÏ¼Ó 1£¬ÐÎʽÊÇÔÚ±äÁ¿ºó·ÅÁ½¸ö¼ÓºÅ£¨++£©£º
var iNum = 10; iNum++;
²»³öËùÁÏ£¬ºó¼õÁ¿ÔËËã·ûÒ²ÊÇ´ÓÊýÖµÉϼõ 1£¬ÐÎʽΪÔÚ±äÁ¿ºó¼ÓÁ½¸ö¼õºÅ£¨--£©£º
var iNum = 10; iNum--;
µÚ¶þÐдúÂë°Ñ iNum µÄ Öµ¼õµ½ 9¡£
Óëǰ׺ʽÔËËã·û²»Í¬µÄÊÇ£¬ºó׺ʽÔËËã·ûÊÇÔÚ¼ÆËã¹ý°üº¬ËüÃǵıí´ïʽºó²Å½øÐÐÔöÁ¿»ò¼õÁ¿ÔËËãµÄ¡£¿¼ÂÇÒÔϵÄÀý×Ó£º
var iNum = 10; iNum--; alert(iNum); //Êä³ö "9" alert(iNum--); //Êä³ö "9" alert(iNum); //Êä³ö "8"
Óëǰ׺ʽÔËËã·ûµÄÀý×ÓÏàËÆ£¬µÚ¶þÐдúÂë¶Ô iNum ½øÐмõÁ¿ÔËË㣬µÚÈýÐдúÂëÏÔʾ½á¹û£¨"9"£©¡£µÚËÄÐдúÂë¼ÌÐøÏÔʾ iNum µÄÖµ£¬²»¹ýÕâ´ÎÊÇÔÚͬһÓï¾äÖÐÓ¦ÓüõÁ¿ÔËËã·û¡£ÓÉÓÚ¼õÁ¿ÔËËã·¢ÉúÔÚ¼ÆËã¹ý±í´ïʽ֮ºó£¬ËùÒÔÕâÌõÓï¾äÏÔʾµÄÊýÊÇ "9"¡£Ö´ÐÐÁ˵ÚÎåÐдúÂëºó£¬alert º¯ÊýÏÔʾµÄÊÇ "8"£¬ÒòΪÔÚÖ´ÐеÚËÄÐдúÂëÖ®ºóºÍÖ´ÐеÚÎåÐдúÂë֮ǰ£¬Ö´ÐÐÁ˺ó¼õÁ¿ÔËËã¡£
ÔÚËãÊõ±í´ïʽÖУ¬ºóÔöÁ¿ºÍºó¼õÁ¿ÔËËã·ûµÄÓÅÏȼ¶ÊÇÏàͬµÄ£¬Òò´ËÒª°´ÕÕ´Ó×óµ½ÓÒµÄ˳Ðò¼ÆËãÖ®¡£ÀýÈ磺
var iNum1 = 2; var iNum2 = 20; var iNum3 = iNum1-- + iNum2++; //µÈÓÚ "22" var iNum4 = iNum1 + iNum2; //µÈÓÚ "22"
ÔÚÇ°ÃæµÄ´úÂëÖУ¬iNum3 µÈÓÚ 22£¬ÒòΪ±í´ïʽҪ¼ÆËãµÄÊÇ 2 + 20¡£±äÁ¿ iNum4 Ò²µÈÓÚ 22£¬²»¹ýËü¼ÆËãµÄÊÇ 1 + 21£¬ÒòΪÔöÁ¿ºÍ¼õÁ¿ÔËËã¶¼ÔÚ¸ø iNum3 ¸³Öµºó²Å·¢Éú¡£
Ò»Ôª¼Ó·¨ºÍÒ»Ôª¼õ·¨
´ó¶àÊýÈ˶¼ÊìϤһԪ¼Ó·¨ºÍÒ»Ôª¼õ·¨£¬ËüÃÇÔÚ ECMAScript ÖеÄÓ÷¨ÓëÄú¸ßÖÐÊýѧÖÐѧµ½µÄÓ÷¨Ïàͬ¡£
Ò»Ôª¼Ó·¨±¾ÖÊÉ϶ÔÊý×ÖÎÞÈκÎÓ°Ï죺
var iNum = 20;
iNum = +iNum;
alert(iNum); //Êä³ö "20"
Õâ¶Î´úÂë¶ÔÊý×Ö 20 Ó¦ÓÃÁËÒ»Ôª¼Ó·¨£¬·µ»ØµÄ»¹ÊÇ 20¡£
¾¡¹ÜÒ»Ôª¼Ó·¨¶ÔÊý×ÖÎÞ×÷Ó㬵«¶Ô×Ö·û´®È´ÓÐÓÐȤµÄЧ¹û£¬»á°Ñ×Ö·û´®×ª»»³ÉÊý×Ö¡£
var sNum = "20"; alert(typeof sNum); //Êä³ö "string" var iNum = +sNum; alert(typeof iNum); //Êä³ö "number"
Õâ¶Î´úÂë°Ñ×Ö·û´® "20" ת»»³ÉÕæÕýµÄÊý×Ö¡£µ±Ò»Ôª¼Ó·¨ÔËËã·û¶Ô×Ö·û´®½øÐвÙ×÷ʱ£¬Ëü¼ÆËã×Ö·û´®µÄ·½Ê½Óë parseInt() ÏàËÆ£¬Ö÷ÒªµÄ²»Í¬ÊÇÖ»ÓжÔÒÔ "0x" ¿ªÍ·µÄ×Ö·û´®£¨±íʾʮÁù½øÖÆÊý×Ö£©£¬Ò»ÔªÔËËã·û²ÅÄܰÑËüת»»³ÉÊ®½øÖƵÄÖµ¡£Òò´Ë£¬ÓÃÒ»Ôª¼Ó·¨×ª»» "010"£¬µÃµ½µÄ×ÜÊÇ 10£¬¶ø "0xB" ½«±»×ª»»³É 11¡£
ÁíÒ»·½Ã棬һԪ¼õ·¨¾ÍÊǶÔÊýÖµÇ󸺣¨ÀýÈç°Ñ 20 ת»»³É -20£©£º
var iNum = 20;
iNum = -iNum;
alert(iNum); //Êä³ö "-20"
ÓëÒ»Ôª¼Ó·¨ÔËËã·ûÏàËÆ£¬Ò»Ôª¼õ·¨ÔËËã·ûÒ²»á°Ñ×Ö·û´®×ª»»³É½üËÆµÄÊý×Ö£¬´ËÍ⻹»á¶Ô¸ÃÖµÇ󸺡£ÀýÈ磺
var sNum = "20"; alert(typeof sNum); //Êä³ö "string" var iNum = -sNum; alert(iNum); //Êä³ö "-20" alert(typeof iNum); //Êä³ö "number"
ÔÚÉÏÃæµÄ´úÂëÖУ¬Ò»Ôª¼õ·¨ÔËËã·û½«°Ñ×Ö·û´® "-20" ת»»³É -20£¨Ò»Ôª¼õ·¨ÔËËã·û¶ÔÊ®Áù½øÖƺÍÊ®½øÖƵĴ¦Àí·½Ê½ÓëÒ»Ôª¼Ó·¨ÔËËã·ûÏàËÆ£¬Ö»ÊÇËü»¹»á¶Ô¸ÃÖµÇ󸺣©¡£