日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JavaScript try/catch/finally 语句

發(fā)布時間:2025/6/15 javascript 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JavaScript try/catch/finally 语句 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

實(shí)例

在下面的例子中,我們故意在 try 塊的代碼中寫了一個錯字。

該實(shí)例本應(yīng)該提醒"歡迎光臨!",但彈出的是拼寫錯誤信息。

catch 塊會捕捉到 try 塊中的錯誤,并執(zhí)行代碼來處理它:

<!DOCTYPE html>
<html>
<body>

<p id="demo"></p>

<script>
try {
??? adddlert("歡迎光臨!");
}
catch(err) {
??? document.getElementById("demo").innerHTML = err.message;
}
</script>

</body>
</html>
嘗試一下 ?

本文底部包含了更多實(shí)例


定義和用法

try/catch/finally 語句用于處理代碼中可能出現(xiàn)的錯誤信息。

錯誤可能是語法錯誤,通常是程序員造成的編碼錯誤或錯別字。也 可能是拼寫錯誤或語言中缺少的功能(可能由于瀏覽器差異)。

try語句允許我們定義在執(zhí)行時進(jìn)行錯誤測試的代碼塊。

catch?語句允許我們定義當(dāng)?try?代碼塊發(fā)生錯誤時,所執(zhí)行的代碼塊。

finally?語句在 try 和 catch 之后無論有無異常都會執(zhí)行。

注意:?catch 和 finally 語句都是可選的,但你在使用 try 語句時必須至少使用一個。

提示:?當(dāng)錯誤發(fā)生時, JavaScript 會停止執(zhí)行,并生成一個錯誤信息。使用?throw?語句 來創(chuàng)建自定義消息(拋出異常)。如果你將?throw和?try?、?catch一起使用,就可以控制程序輸出的錯誤信息。

更多關(guān)于 JavaScript 錯誤,請參閱我們的?JavaScript 錯誤?教程。


瀏覽器支持

語句 ? ? ? ? ?
try/catch/finally Yes Yes Yes Yes Yes


語法

try {
????tryCode - 嘗試執(zhí)行代碼塊
}
catch(err) {
????catchCode - 捕獲錯誤的代碼塊
}?
finally {
????finallyCode - 無論 try / catch 結(jié)果如何都會執(zhí)行的代碼塊
}

參數(shù)值

參數(shù) 描述
tryCode 必須。檢查是否有錯誤的代碼塊。
err 必須(如果使用 catch)。指定局部變量應(yīng)用的錯誤。該變量可以引用 Error 對象 (包含發(fā)生的錯誤信息,如 "'addlert' 沒有定義")。如果異常通過 throw 語句創(chuàng)建 , 該 變量引用了為在throw語句中指定的對象 (查看 "更多實(shí)例")
catchCode 可選。如果 try 語句發(fā)生錯誤執(zhí)行的代碼塊。如果 try 語句沒發(fā)生錯誤該代碼不會執(zhí)行。
finallyCode 可選。無論 try / catch 的結(jié)果如何都會執(zhí)行。

技術(shù)細(xì)節(jié)

JavaScript 版本:
1.4


更多實(shí)例

實(shí)例

該實(shí)例檢測輸入的值是否錯誤,如果錯誤則拋出異常。

異常通過 catch 語句捕獲,并輸出自定義信息:

<!DOCTYPE html>
<html>
<body>

<p>Please input a number between 5 and 10:</p>

<input id="demo" type="text">
<button type="button" οnclick="myFunction()">Test Input</button>
<p id="message"></p>

<script>
function myFunction() {
??? var message, x;
??? message = document.getElementById("message");
??? message.innerHTML = "";
????x = document.getElementById("demo").value;
??? try {?
??????? if(x == "") throw "is Empty";
??????? if(isNaN(x)) throw "not a number";
??????? if(x > 10) throw "too high";
??????? if(x < 5) throw "too low";
??? }
??? catch(err) {
??????? message.innerHTML = "Input " + err;
??? }
}
</script>

</body>
</html>
嘗試一下 ?

實(shí)例

finally?語句無論 try 和 catch 執(zhí)行結(jié)果如何都會執(zhí)行:

function myFunction()
??? var message, x;
??? message = document.getElementById("message");
??? message.innerHTML = "";
????x = document.getElementById("demo").value;
??? try {?
??????? if(x == "") throw "Empty";
??????? if(isNaN(x)) throw "Not a number";
??????? if(x > 10) throw "Too high";
??????? if(x < 5) throw "Too low";
??? }
??? catch(err) {
??????? message.innerHTML = "Error: " + err + ".";
??? }
??? finally {
??? ????document.getElementById("demo").value = "";
??? }
}
嘗試一下 ?

總結(jié)

以上是生活随笔為你收集整理的JavaScript try/catch/finally 语句的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。