試試......抓住
try … catch 塊用於處理異常,記住異常意味著丟擲錯誤而不是錯誤。
try {
var a = 1;
b++; //this will cause an error because be is undefined
console.log(b); //this line will not be executed
} catch (error) {
console.log(error); //here we handle the error caused in the try block
}
在 try
塊中 b++
導致錯誤,並且錯誤傳遞給 catch
塊,可以在那裡處理,甚至可以在 catch 塊中丟擲相同的錯誤或者稍微修改然後丟擲。我們來看下一個例子。
try {
var a = 1;
b++;
console.log(b);
} catch (error) {
error.message = "b variable is undefined, so the undefined can't be incremented"
throw error;
}
在上面的例子中,我們修改了 error
物件的 message
屬性,然後丟擲修改後的 error
。
你可以通過 try 塊中的任何錯誤並在 catch 塊中處理它:
try {
var a = 1;
throw new Error("Some error message");
console.log(a); //this line will not be executed;
} catch (error) {
console.log(error); //will be the above thrown error
}