1.try-catch語句作為JavaScript中處理異常的一種標準方法,其基本語法如下:
~~~
tyr{
//可能會導致錯誤的代碼
} catch(error) {
//在錯誤發生時怎么處理
}
~~~
2.如果try塊中的任何代碼發生錯誤,就會立即退出代碼執行過程,然后接著執行catch塊。此時,catch塊會接收到一個包含錯誤信息的**對象**。與其他語言中不同的是,即使你不想使用這個錯誤對象,也要給它起個名字。這個對象中包含的實際信息會因瀏覽器而異,但共同的是有一個保存著錯誤信息的message屬性。
3.finally子句。雖然在try-catch語句中是可選的,但finally字句一經使用,其代碼無論如何都會執行,甚至return語句都不會阻止finally子句的執行。(只要代碼中包含finally語句,那么無論try還是catch語句塊中的return語句都將被忽略)。如果提供了finally子句,則catch子句就成了可選的,即catch或finally有一個即可。
4.利用不同的錯誤類型,可以獲悉更多有關異常的信息,從而有助于對錯誤作出恰當的處理。要想知道錯誤的類型,可以使用instanceof操作符。(包含在message屬性中的錯誤消息會因瀏覽器而異,不適合跨瀏覽器開發)
5.使用try-catch最適合處理那些我們無法控制的錯誤。假設你在使用一個大型JavaScript庫中的函數,該函數可能會有意無意地拋出一些錯誤。由于我們不能修改這個庫的源代碼,所以大可將對該函數的調用放在try-catch語句中,萬一有什么錯誤發生,也好恰當地處理它們。
6.與try-catch語句相配的還有一個throw操作符,用于隨時拋出自定義錯誤。在遇到throw操作符時,代碼會立即停止執行。僅當有try-catch語句捕獲到被拋出的值時,代碼才回繼續執行。建議開發者在開發JavaScript代碼的過程中,重點關注函數和可能導致函數執行失敗的因素。良好的錯誤處理機制應該可以確保代碼中只發生你自己拋出的錯誤。