當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
JavaScript中的Try...Catch 语句
生活随笔
收集整理的這篇文章主要介紹了
JavaScript中的Try...Catch 语句
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
try...catch 的作用是測試代碼中的錯誤。
有兩種在網(wǎng)頁中捕獲錯誤的方法:
(1)使用 try...catch 語句。(在 IE5+、Mozilla 1.0、和 Netscape 6 中可用)?
(2)使用 onerror 事件。這是用于捕獲錯誤的老式方法。(Netscape 3 以后的版本可用)
Try...Catch 語句:?可以測試代碼中的錯誤。try 部分包含需要運行的代碼,而 catch 部分包含錯誤發(fā)生時運行的代碼。
語法:
{
???//在此運行代碼
}
catch(err)
{
???//在此處理錯誤
}
注意:try...catch 使用小寫字母。大寫字母會出錯。
舉例如下:
<head>
<script?type="text/javascript">
var?txt="";
function?message()
{
try
??{
??alerty("歡迎您!")?//誤寫成alerty,trycatch捕捉錯誤
??}
catch(err)
??{
??txt="此頁面存在一個錯誤。\n\n";
??txt+="錯誤描述:?"?+?err.description?+?"\n\n";
??txt+="點擊OK繼續(xù)。\n\n";
??alert(txt);
??}
}
</script>
</head>
<body>
<input?type="button"?value="點擊我"?onclick="message()"?/>
</body>
</html>
throw 聲明的作用是創(chuàng)建 exception(異常或錯誤)。
這個聲明與try...catch 聲明配合使用,以達到控制程序流并產(chǎn)生精確錯誤消息的目的。
語法:throw(exception)
exception 可以是字符串、整數(shù)、邏輯值或者對象。
舉例如下:如果 x 的值大于 10 或者小于 0,錯誤就會被拋出 (throw)。這個錯誤被 catch 的參數(shù)捕獲后,就會顯示出自定義的出錯信息。
<body>
<script?type="text/javascript">
var?x=prompt("Enter?a?number?between?0?and?10:","")
try
{?
if(x>10)?
throw?"Err1"
else?if(x<0)
throw?"Err2"
}?
catch(er)
{
if(er=="Err1")?
alert("Error!?The?value?is?too?high")
if(er?==?"Err2")?
alert("Error!?The?value?is?too?low")?
}
</script>
</body>
</html> onerror 事件:
如果需要利用 onerror 事件,就 必須創(chuàng)建一個處理錯誤的函數(shù) 。你可以把這個函數(shù)叫作 onerror 事件處理器 (onerror event handler)。這個事件處理器使用三個參數(shù)來調(diào)用: msg(錯誤消息)、url(發(fā)生錯誤的頁面的 url)、line(發(fā)生錯誤的代碼行) 。
語法:
οnerrοr=handleErrfunction handleErr(msg,url,l)
{
//Handle the error here
return true or false
}
瀏覽器是否顯示標準的錯誤消息,取決于 onerror 的返回值。如果返回值為 false,則在控制臺 (JavaScript console) 中顯示錯誤消息。反之則不會。
舉例如下:
<html>
<head>
<script?type="text/javascript">
onerror=handleErr
var?txt=""
function?handleErr(msg,url,l)
{
txt="There?was?an?error?on?this?page.\n\n"
txt+="Error:?"?+?msg?+?"\n"
txt+="URL:?"?+?url?+?"\n"
txt+="Line:?"?+?l?+?"\n\n"
txt+="Click?OK?to?continue.\n\n"
alert(txt)
return?true
}
function?message()
{
adddlert("Welcome?guest!")
}
</script>
</head>
<body>
<input?type="button"?value="點擊我"?onclick="message()"?/>
</body>
</html>
總結(jié)
以上是生活随笔為你收集整理的JavaScript中的Try...Catch 语句的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: js中event对象属性和方法
- 下一篇: JavaScript try/catch