溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

JavaScript中Try…Catch語(yǔ)句的用法

發(fā)布時(shí)間:2021-09-10 16:14:03 來(lái)源:億速云 閱讀:87 作者:chen 欄目:開(kāi)發(fā)技術(shù)

這篇文章主要介紹“JavaScript中Try…Catch語(yǔ)句的用法”,在日常操作中,相信很多人在JavaScript中Try…Catch語(yǔ)句的用法問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”JavaScript中Try…Catch語(yǔ)句的用法”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

文章目錄  

  • 語(yǔ)法:

JavaScript Try...Catch 語(yǔ)句

  • Previous Page

  • Next Page

try...catch 的作用是測(cè)試代碼中的錯(cuò)誤。

實(shí)例

  • try...catch 語(yǔ)句

  • 如何編寫(xiě) try...catch 語(yǔ)句。

  • 帶有確認(rèn)框的 try...catch 語(yǔ)句

  • 另一個(gè)編寫(xiě) try...catch 語(yǔ)句的例子。

JavaScript - 捕獲錯(cuò)誤

當(dāng)我們?cè)诰W(wǎng)上沖浪時(shí),總會(huì)看到帶有 runtime 錯(cuò)誤的 Javascript 警告框,同時(shí)會(huì)詢(xún)問(wèn)我們“是否進(jìn)行 debug?”。像這樣的錯(cuò)誤信息或許對(duì)開(kāi)發(fā)人員有用,對(duì)用戶則未必。當(dāng)錯(cuò)誤發(fā)生時(shí),他們往往會(huì)選擇離開(kāi)這個(gè)站點(diǎn)。

本節(jié)向你講解如何捕獲和處理 Javascript 的錯(cuò)誤消息,這樣就可以為受眾提供更多的便利。

有兩種在網(wǎng)頁(yè)中捕獲錯(cuò)誤的方法:

  • 使用 try...catch 語(yǔ)句。(在 IE5+、Mozilla 1.0、和 Netscape 6 中可用)

  • 使用 onerror 事件。這是用于捕獲錯(cuò)誤的老式方法。(Netscape 3 以后的版本可用)

注意:chrome、opera 和 safari 瀏覽器不支持 onerror 事件。

Try...Catch 語(yǔ)句

try...catch 可以測(cè)試代碼中的錯(cuò)誤。try 部分包含需要運(yùn)行的代碼,而 catch 部分包含錯(cuò)誤發(fā)生時(shí)運(yùn)行的代碼。

語(yǔ)法:
try{
   //在此運(yùn)行代碼
}catch(err){
   //在此處理錯(cuò)誤
}

注意:try...catch 使用小寫(xiě)字母。大寫(xiě)字母會(huì)出錯(cuò)。

實(shí)例 1

下面的例子原本用在用戶點(diǎn)擊按鈕時(shí)顯示 "Welcome guest!" 這個(gè)消息。不過(guò) message() 函數(shù)中的 alert() 被誤寫(xiě)為 adddlert()。這時(shí)錯(cuò)誤發(fā)生了:

<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 語(yǔ)句,這樣當(dāng)錯(cuò)誤發(fā)生時(shí)可以采取更適當(dāng)?shù)拇胧?/p>

下面的例子用 try...catch 語(yǔ)句重新修改了腳本。由于誤寫(xiě)了 alert(),所以錯(cuò)誤發(fā)生了。不過(guò)這一次,catch 部分捕獲到了錯(cuò)誤,并用一段準(zhǔn)備好的代碼來(lái)處理這個(gè)錯(cuò)誤。這段代碼會(huì)顯示一個(gè)自定義的出錯(cuò)信息來(lái)告知用戶所發(fā)生的事情。

<html>
<head>
<script type="text/javascript">
var txt=""
function message()
{try
  {
  adddlert("Welcome guest!")
  }catch(err)
  {
  txt="此頁(yè)面存在一個(gè)錯(cuò)誤。\n\n"
  txt+="錯(cuò)誤描述: " + err.description + "\n\n"
  txt+="點(diǎn)擊OK繼續(xù)。\n\n"
  alert(txt)
  }
}
</script>
</head>

<body>
<input type="button" value="View message" onclick="message()" />
</body>

</html>

TIY

實(shí)例 2

下一個(gè)例子會(huì)顯示一個(gè)確認(rèn)框,讓用戶來(lái)選擇在發(fā)生錯(cuò)誤時(shí)點(diǎn)擊確定按鈕來(lái)繼續(xù)瀏覽網(wǎng)頁(yè),還是點(diǎn)擊取消按鈕來(lái)回到首頁(yè)。如果 confirm 方法的返回值為 false,代碼會(huì)把用戶重定向到其他的頁(yè)面。如果 confirm 方法的返回值為 true,那么代碼什么也不會(huì)做。

<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>

到此,關(guān)于“JavaScript中Try…Catch語(yǔ)句的用法”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI