JavaScript Try...Catch Óï¾ä
try...catch µÄ×÷ÓÃÊDzâÊÔ´úÂëÖеĴíÎó¡£
ʵÀý
- try...catch Óï¾ä
- ÈçºÎ±àд try...catch Óï¾ä¡£
- ´øÓÐÈ·ÈÏ¿òµÄ try...catch Óï¾ä
- ÁíÒ»¸ö±àд try...catch Óï¾äµÄÀý×Ó¡£
JavaScript - ²¶»ñ´íÎó
µ±ÎÒÃÇÔÚÍøÉϳåÀËʱ£¬×ܻῴµ½´øÓÐ runtime ´íÎóµÄ Javascript ¾¯¸æ¿ò£¬Í¬Ê±»áѯÎÊÎÒÃÇ¡°ÊÇ·ñ½øÐÐ debug£¿¡±¡£ÏñÕâÑùµÄ´íÎóÐÅÏ¢»òÐí¶Ô¿ª·¢ÈËÔ±ÓÐÓ㬶ÔÓû§Ôòδ±Ø¡£µ±´íÎó·¢Éúʱ£¬ËûÃÇÍùÍù»áÑ¡ÔñÀ뿪Õâ¸öÕ¾µã¡£
±¾½ÚÏòÄã½²½âÈçºÎ²¶»ñºÍ´¦Àí Javascript µÄ´íÎóÏûÏ¢£¬ÕâÑù¾Í¿ÉÒÔΪÊÜÖÚÌṩ¸ü¶àµÄ±ãÀû¡£
ÓÐÁ½ÖÖÔÚÍøÒ³Öв¶»ñ´íÎóµÄ·½·¨£º
- ʹÓà try...catch Óï¾ä¡£(ÔÚ IE5+¡¢Mozilla 1.0¡¢ºÍ Netscape 6 ÖпÉÓÃ)
- ʹÓà onerror ʼþ¡£ÕâÊÇÓÃÓÚ²¶»ñ´íÎóµÄÀÏʽ·½·¨¡£(Netscape 3 ÒÔºóµÄ°æ±¾¿ÉÓÃ)
×¢Ò⣺chrome¡¢opera ºÍ safari ä¯ÀÀÆ÷²»Ö§³Ö onerror ʼþ¡£
Try...Catch Óï¾ä
try...catch ¿ÉÒÔ²âÊÔ´úÂëÖеĴíÎó¡£try ²¿·Ö°üº¬ÐèÒªÔËÐеĴúÂ룬¶ø catch ²¿·Ö°üº¬´íÎó·¢ÉúʱÔËÐеĴúÂë¡£
Óï·¨£º
try
{ //ÔÚ´ËÔËÐдúÂë }catch(err)
{ //ÔÚ´Ë´¦Àí´íÎó }
×¢Ò⣺try...catch ʹÓÃСд×Öĸ¡£´óд×Öĸ»á³ö´í¡£
ʵÀý 1
ÏÂÃæµÄÀý×ÓÔ±¾ÓÃÔÚÓû§µã»÷°´Å¥Ê±ÏÔʾ "Welcome guest!" Õâ¸öÏûÏ¢¡£²»¹ý message() º¯ÊýÖÐµÄ alert() ±»ÎóдΪ adddlert()¡£Õâʱ´íÎó·¢ÉúÁË£º
<html> <head> <script type="text/javascript"> function message() { adddlert("Welcome guest!") } </script> </head> <body> <input type="button" value="View message" onclick="message()" /> </body> </html>
ÎÒÃÇ¿ÉÒÔÌí¼Ó try...catch Óï¾ä£¬ÕâÑùµ±´íÎó·¢Éúʱ¿ÉÒÔ²ÉÈ¡¸üÊʵ±µÄ´ëÊ©¡£
ÏÂÃæµÄÀý×ÓÓà try...catch Óï¾äÖØÐÂÐÞ¸ÄÁ˽ű¾¡£ÓÉÓÚÎóдÁË alert()£¬ËùÒÔ´íÎó·¢ÉúÁË¡£²»¹ýÕâÒ»´Î£¬catch ²¿·Ö²¶»ñµ½ÁË´íÎ󣬲¢ÓÃÒ»¶Î×¼±¸ºÃµÄ´úÂëÀ´´¦ÀíÕâ¸ö´íÎó¡£Õâ¶Î´úÂë»áÏÔʾһ¸ö×Ô¶¨ÒåµÄ³ö´íÐÅÏ¢À´¸æÖªÓû§Ëù·¢ÉúµÄÊÂÇé¡£
<html> <head> <script type="text/javascript"> var txt="" function message() {try
{ adddlert("Welcome guest!") }catch(err)
{ txt="´ËÒ³Ãæ´æÔÚÒ»¸ö´íÎó¡£\n\n" txt+="´íÎóÃèÊö: " + err.description + "\n\n" txt+="µã»÷OK¼ÌÐø¡£\n\n" alert(txt) } } </script> </head> <body> <input type="button" value="View message" onclick="message()" /> </body> </html>
ʵÀý 2
ÏÂÒ»¸öÀý×Ó»áÏÔʾһ¸öÈ·ÈÏ¿ò£¬ÈÃÓû§À´Ñ¡ÔñÔÚ·¢Éú´íÎóʱµã»÷È·¶¨°´Å¥À´¼ÌÐøä¯ÀÀÍøÒ³£¬»¹Êǵã»÷È¡Ïû°´Å¥À´»Øµ½Ê×Ò³¡£Èç¹û confirm ·½·¨µÄ·µ»ØÖµÎª false£¬´úÂë»á°ÑÓû§Öض¨Ïòµ½ÆäËûµÄÒ³Ãæ¡£Èç¹û confirm ·½·¨µÄ·µ»ØÖµÎª true£¬ÄÇô´úÂëʲôҲ²»»á×ö¡£
<html> <head> <script type="text/javascript"> var txt="" function message() {try
{ adddlert("Welcome guest!") }catch(err)
{ txt="There was an error on this page.\n\n" txt+="Click OK to continue viewing this page,\n" txt+="or Cancel to return to the home page.\n\n" if(!confirm(txt)) { document.location.href="http://www.w3school.com.cn/" } } } </script> </head> <body> <input type="button" value="View message" onclick="message()" /> </body> </html>
onerror ʼþ
ÎÒÃÇÂíÉϻὲ½â onerror ʼþ¡£µ«Ê×ÏÈÄúÐèҪѧϰÈçºÎʹÓà throw Óï¾äÀ´´´½¨Òì³£¡£throw Óï¾ä¿ÉÒÔÓë try...catch Óï¾äÒ»ÆðʹÓá£