VBScript - 錯誤處理



程式設計中存在三種類型的錯誤:(a)語法錯誤,(b)執行時錯誤,以及(c)邏輯錯誤。

語法錯誤

語法錯誤,也稱為解析錯誤,發生在 VBScript 的解釋時間。例如,以下行會導致語法錯誤,因為它缺少一個右括號:

<script type = "text/vbscript">

   dim x,y
   x = "Tutorialspoint"
   y = Ucase(x

</script>

執行時錯誤

執行時錯誤,也稱為異常,發生在執行期間,解釋之後。例如,以下行會導致執行時錯誤,因為這裡的語法是正確的,但在執行時它試圖呼叫 fnmultiply,這是一個不存在的函式:

<script type = "text/vbscript">
   Dim x,y
   x = 10
   y = 20
   z = fnadd(x,y)
   a = fnmultiply(x,y)
   
   Function fnadd(x,y)
      fnadd = x+y
   End Function

</script>

邏輯錯誤

邏輯錯誤可能是最難追蹤的錯誤型別。這些錯誤不是語法或執行時錯誤的結果。相反,當您在驅動指令碼的邏輯中犯錯並且沒有得到預期的結果時,就會發生這些錯誤。您無法捕獲這些錯誤,因為根據您的業務需求,您希望在程式中使用哪種邏輯。例如,將數字除以零或編寫一個進入無限迴圈的指令碼。

Err 物件

假設如果我們遇到執行時錯誤,則執行將停止並顯示錯誤訊息。作為開發人員,如果我們想要捕獲錯誤,則使用Error 物件。

示例

在下面的示例中,Err.Number 給出錯誤號,Err.Description 給出錯誤描述。

<script type = "text/vbscript">
  
  Err.Raise 6     ' Raise an overflow error.
  MsgBox "Error # " & CStr(Err.Number) & " " & Err.Description
  Err.Clear       ' Clear the error.

</script>
廣告

© . All rights reserved.