[JavaScript] (Day-29) - 錯誤處理 Throw、Try 和 Catch

Either you run the day, or the day runs you. 你不掌握時間,時間就會折磨你。

當 JavaScript 引擎執行 JavaScript 代碼時,會發生各種錯誤:

  • 可能是語法錯誤,通常是程序員造成的編碼錯誤或錯別字
  • 可能是拼寫錯誤或語言中缺少的功能(可能由于瀏覽器差異)
  • 可能是由于來自服務器或用戶的錯誤輸出而導致的錯誤
  • 當然,也可能是由于許多其他不可預知的因素
  • ...

JavaScript 錯誤處理三大關鍵詞 - throwtrycatch
  • try - 語句測試代碼塊的錯誤
  • catch - 語句處理錯誤
  • throw - 語句創建自定義錯誤

JavaScript 拋出(throw)錯誤

當錯誤發生時,當事情出問題時,JavaScript 引擎通常會停止,并生成一個錯誤消息;

描述這種情況的技術術語是:JavaScript 將拋出一個錯誤。

Throw 語句

throw 語句允許我們創建自定義錯誤;

正確的技術術語是:創建或拋出異常(exception);

如果把 throwtrycatch 一起使用,那么您能夠控制程序流,并生成自定義的錯誤消息。

Throw 語法
 throw exception 

catch 會捕捉到這個錯誤,并顯示一段自定義的錯誤消息:

try
  { 
    var x = document.getElementById("demo").value;
    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)
  {
    var y = document.getElementById("mess");
    y.innerHTML="Error: " + err + ".";
  }

JavaScript try 和 catch

try 語句允許我們定義在執行時進行錯誤測試的代碼塊;

catch 語句允許我們定義當 try 代碼塊發生錯誤時,所執行的代碼塊;

catch 塊會捕捉到 try 塊中的錯誤,并執行代碼來處理它;

JavaScript 語句 try 和 catch 是成對出現的。

語法
try
   {
   //在這里運行代碼
   }
 catch(err)
   {
   //在這里處理錯誤
   }
實例
try
  {
    errAlert("Welcome guest!");
  }
catch(err)
  {
    txt="本頁有一個錯誤。\n\n";
    txt+="錯誤描述:" + err.message + "\n\n";
    txt+="點擊確定繼續。\n\n";
    alert(txt);
  }

因為 errAlert() 函數未定義,所以會報錯,錯誤信息為:errAlert is not defined

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,738評論 18 399
  • Java異常類型 所有異常類型都是Throwable的子類,Throwable把異常分成兩個不同分支的子類Erro...
    予別她閱讀 946評論 0 2
  • 時常會想起張愛玲筆下的《半生緣》中,世鈞與曼禎事隔多年后重逢的鏡頭。他們痛苦萬分,淚流滿面,昔日萬般情深,最后也...
    風吹過_fd4e閱讀 386評論 0 0