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>

TIY

ʵÀý 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>

TIY

onerror ʼþ

ÎÒÃÇÂíÉϻὲ½â onerror ʼþ¡£µ«Ê×ÏÈÄúÐèҪѧϰÈçºÎʹÓà throw Óï¾äÀ´´´½¨Òì³£¡£throw Óï¾ä¿ÉÒÔÓë try...catch Óï¾äÒ»ÆðʹÓá£

VUE