JavaScript快速入門-07-異常處理與調試

7、異常處理與調試

7.1 異常處理

7.1.1 try/catch語句

    try/catch語句常用於處理JavaScript中的異常,其基本語法如下所示:

try {
   // 可能出錯的代碼
} catch(error){
   // 出錯後,需要做的事
} finally{
  // 不管怎樣,都要運行的語句
}

如果try塊中有代碼發生錯誤,則立即退出執行,並跳到catch塊中,此時catch會接收到一個對象,該對象包含發生錯誤的相關信息。在catch塊中不使用錯誤對象,也必須爲它定義名稱,其包含一個message屬性。

    示例代碼如下所示:

let a=12;

try {
    a/b
} catch (error) {
    console.error(`An error happend,please check,detail message is ${error.message}`); // An error happend,please check,detail message is b is not defined
} finally{
   console.log("run finally ");
}

    再來看看以下代碼,返回值是多少?

function testTryCatchFinally(){
    try {
        return 0;
    } catch (error) {
        return 1;
    } finally{
        return 2;
    }
}

console.log(`return value is ${testTryCatchFinally()}`);  // return value is 2

在上面語句中,finally中的return返回會覆蓋try中的return語句。

    常見的錯誤類型如下所示:

  • Error
  • InternalError
  • EvalError
  • RangeError
  • ReferenceError
  • SyntaxError
  • TypeError
  • URIError

7.1.2 拋出錯誤

    與try/catch 語句對應的一個機制是throw 操作符,用於在任何時候拋出自定義錯誤,throw 操作符必須有一個值,但值的類型不限。以下爲示例:

throw "error"
throw 123
throw {"name":"Surpass"}
throw [1,2,3,4]
throw new Error("abc")

使用throw時,代碼會立即停止運行

7.2 調試

    JavaScript用於調試的方法比較多,這裏僅介紹把消息記錄到控制檯。所有主流瀏覽器都有JavaScript控制檯,可用於查詢JavaScript錯誤,也支持通過console對象直接把JavaScript消息寫入控制檯,主要包含以下方法:

  • error(message):在控制檯中記錄錯誤消息。
  • info(message):在控制檯中記錄信息性內容。
  • log(message):在控制檯記錄常規消息。
  • warn(message):在控制檯中記錄警告消息。

原文地址:https://www.jianshu.com/p/4436750c806e

本文同步在微信訂閱號上發佈,如各位小夥伴們喜歡我的文章,也可以關注我的微信訂閱號:woaitest,或掃描下面的二維碼添加關注:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章