在 JavaScript 中使用不帶 Catch 的 try 語句
今天的文章將介紹在 JavaScript 中不實現 catch
的 try
語句。
在 JavaScript 中實現沒有 Catch
的 Try
JavaScript try
塊用於封裝可能引發異常的程式碼。它必須在方法中使用。
如果特定語句中發生異常,則應在 catch
語句中捕獲。
語法:
try {
try_statements
/* Code to executed */
} catch (exception_var) {
catch_statements
/* Handle exception */
} finally {
finally_statements
/* Final Code/Clean variables */
}
try_statements
是要執行的語句。catch_statements
是在try
塊中丟擲異常時要執行的語句。exception_var
是一個可選識別符號,包含相關catch
塊的異常物件。finally_statements
是測試語句完成後執行的語句。無論是否丟擲或捕獲異常,都會執行這些語句。
try
語句由包含一個或多個語句的 try
塊組成。 {}
應始終使用,即使對於單個語句也是如此。
必須存在 catch
塊或 finally
塊。這為我們提供了 try
語句的三種組合。
try...catch
try...finally
try...catch...finally
catch
塊包括指定在 try
塊中丟擲異常時要同時做什麼的語句。如果 try
塊中的語句(或從 try
塊呼叫的函式中)丟擲異常,控制立即切換到 catch
塊。
如果在 try
塊中沒有丟擲異常,catch
塊將被忽略/跳過。
finally
塊總是在 try
和 catch
塊完成執行後執行。無論異常是被丟擲還是被卡住,finally
塊通常與它內部的語句一起執行。
可以巢狀一個或多個測試語句。如果內部 try
語句沒有處理錯誤的 catch
塊,則使用封閉 try
語句的 catch
塊代替。
try
語句也可用於處理 JavaScript 異常。如果丟擲異常,則 finally
塊中的語句最終將執行,即使沒有 catch
塊處理異常。
你可以在 try...catch
的文件中獲得有關 try...catch
的更多資訊。
讓我們通過下面的例子來理解它。
try {
console.log('Executing try block')
throw new Error(0 / 0)
} finally {
console.log('Final Call')
}
在上面的例子中,我們定義了一個沒有 catch
的 try
。我們通過將 0
除以 0
來丟擲錯誤。
它將丟擲一個 NaN
錯誤,由於缺少 catch
塊,finally
塊不會捕獲該錯誤,並在 finally
塊中列印 "Final Call"
語句。你還可以使用這些塊來執行所需的操作並清理 finally
塊中未使用的變數/資源。
嘗試在任何支援 JavaScript 的瀏覽器中執行上述程式碼片段;它將在下面顯示結果。
Executing try block
Final Call
Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.
LinkedIn