try...catch 用來異常捕獲(主要適用於ie5以上核心的瀏覽器,也是最常用的異常捕獲方式)
使用onerror時間捕獲異常,這種捕獲方式是比較古老的一中方式,目前一些主流的瀏覽器暫不支援這種
捕獲方式。
捕獲異常的語法如下:
如果把try catch 去掉的話 ,會出現什麼情況呢?
控制台報錯了 ,而且後續中斷沒有執行,因為新增的日誌列印資訊沒有執行,。針對
這種沒有捕獲的異常,會異常中斷程式,頁面上沒有合理的提示資訊,使用者會莫名其妙
體驗非常不好。
以上是針對try catch的使用方法的描述,還有一種情況就是,需要自定義乙個異常然後丟擲,
比如某個條件不符合或是值為空的情況,需要丟擲異常,提示使用者,暫停後續程式的執行,
這種情況就需要throw乙個exception
重新整理瀏覽器,看看throw出來的異常提示資訊,就是我們定義的錯誤資訊「不是數字」,
因為num的值為a,判斷為空的語句通過,判斷是否數字的語句丟擲異常
通過上面的例子可以發現,異常場景都在我們的控制範圍之內,
不會出現什麼未知和突然中斷程式的異常
通過上面有異常捕獲和沒有異常捕獲的情況對比來看,
沒有捕獲處理異常的情況,非常不友好,程式也缺少健壯性
捕獲和丟擲異常
異常處理5個關鍵字 try catch finally throw throws 不捕獲異常 public class test 捕獲異常,finally 可以不要,用於 假設io資源關閉,就會用到。public class test catch arithmeticexception e fina...
丟擲異常和捕獲異常 多捕獲和最終重新丟擲的異常處理
丟擲異常和捕獲異常 joseph d.darcy宣布,在langtools團隊成員maurizio cimadamore開發的多捕獲實現成功的經驗之後,具有多捕獲和最終重新丟擲的改進的異常處理將成為即將到來的jdk 7構建的一部分。當前,使用者可以將變更集應用於jdk 7 langtools儲存庫的...
oracle plsql 捕獲異常和丟擲異常
在寫oracle儲存過程的時候很多東西放到儲存過程裡面比如一些判斷等,要比在程式邏輯裡面簡單很多,但是也會涉及到捕獲和丟擲一樣的問題。exception when excepttion name1 then when excepttion name2 then when excepttion nam...