91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

javascript捕獲異常有哪些方法

發布時間:2021-07-21 10:47:26 來源:億速云 閱讀:158 作者:chen 欄目:web開發

這篇文章主要介紹“javascript捕獲異常有哪些方法”,在日常操作中,相信很多人在javascript捕獲異常有哪些方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”javascript捕獲異常有哪些方法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

方法:1、使用try catch finally語句,語法“try{//調試代碼塊}catch(e) {//捕獲處理異常}finally{//后期清理代碼塊}”;2、使用窗口對象window的onerror事件。

本教程操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。

javascript捕獲異常的方法

JavaScript的異常主要使用try catch finally語句以及窗口對象windowonerror事件來捕獲。

try catch finally

try catch finally只能捕獲運行時的錯誤,無法捕獲語法錯誤,可以拿到出錯的信息,堆棧,出錯的文件、行號、列號。try catch finally語句標記要嘗試的語句塊,并指定一個出現異常時拋出的響應。

try{
    // try_statements
    throw new TypeError("Test");
}catch (e){
    // catch_statements
    console.log("catch_statements");
    if(e instanceof TypeError){
        // handle this expected error
        console.log("handle this expected error");
    }else{
        // handle unexpected error
        console.log("handle unexpected error");
    }
}finally{
    // finally_statements
    console.log("finally_statements");
}

/*
    注:
    [catch (e if e instanceof TypeError) { // 非標準
       catch_statements
    }]
*/

通過Error的構造器可以創建一個錯誤對象,當運行時錯誤產生時,Error的實例對象會被拋出,Error對象也可用于用戶自定義的異常的基礎對象,Js內建了幾種標準錯誤類型:

  • EvalError: 創建一個error實例,表示錯誤的原因:與eval()有關。

  • RangeError: 創建一個error實例,表示錯誤的原因:數值變量或參數超出其有效范圍。

  • ReferenceError: 創建一個error實例,表示錯誤的原因:無效引用。

  • SyntaxError: 創建一個error實例,表示錯誤的原因:eval()在解析代碼的過程中發生的語法錯誤。

  • TypeError: 創建一個error實例,表示錯誤的原因:變量或參數不屬于有效類型。

  • URIError: 創建一個error實例,表示錯誤的原因:給encodeURI()decodeURl()傳遞的參數無效。

window.onerror

window.onerror可以捕捉語法錯誤,也可以捕捉運行時錯誤,可以拿到出錯的信息,堆棧,出錯的文件、行號、列號,只要在當前window執行的Js腳本出錯都會捕捉到,通過window.onerror可以實現前端的錯誤監控。出于安全方面的考慮,當加載自不同域的腳本中發生語法錯誤時,語法錯誤的細節將不會報告。

/*
    message:錯誤信息(字符串)。
    source:發生錯誤的腳本URL(字符串)
    lineno:發生錯誤的行號(數字)
    colno:發生錯誤的列號(數字)
    error:Error對象(對象)
    若該函數返回true,則阻止執行默認事件處理函數。
*/
window.onerror = function(message, source, lineno, colno, error) { 
    // onerror_statements
}

/*
    ErrorEvent類型的event包含有關事件和錯誤的所有信息。
*/
window.addEventListener('error', function(event) { 
    // onerror_statements
})

到此,關于“javascript捕獲異常有哪些方法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

基隆市| 合江县| 平南县| 凤山市| 沛县| 南召县| 罗定市| 公安县| 泗洪县| 景谷| 潍坊市| 晋城| 台前县| 舟曲县| 荣成市| 阿拉尔市| 潮州市| 滦平县| 武鸣县| 大方县| 开鲁县| 吴江市| 晋江市| 鹤峰县| 溆浦县| 乐业县| 宜都市| 黄浦区| 丽水市| 行唐县| 西宁市| 济阳县| 呼和浩特市| 临江市| 大荔县| 临澧县| 祁门县| 龙陵县| 鹤壁市| 华坪县| 文化|