試試......抓住

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 
}