共用方式為


throw 陳述式

產生一個 try...catch...finally 陳述式可處理的錯誤條件。

throw [exception]

引數

  • 例外狀況
    選擇項。 任何運算式。

備註

使用 throw 陳述式時可以不加上引數,除非 throw 陳述式是包含在 catch 區塊內。 若是如此,throw 陳述式會重新擲回封閉的 catch 陳述式攔截到的錯誤。 當提供引數時,throw 陳述式會產生 exception 的值。

範例

下列範例會根據傳入值擲回錯誤,然後說明如何在 try...catch...finally 陳述式的階層架構中處理該錯誤:

function ThrowDemo(x)
{
    try
    {
        try
        {
        // Throw an exception that depends on the argument.
        if (x == 0)
            throw new Error(200, "x equals zero");
        else
            throw new Error(201, "x does not equal zero");
        }
        catch(e)
        {
            // Handle the exception.
            switch (e.number)
                {
                case 200:
                    print (e.message + " - handled locally.");
                    break;
                default:
                    // Throw the exception to a higher level.
                    throw e;
                }
        }
    }
    catch(e)
    {
        // Handle the higher-level exception.
        print (e.message + " - handled higher up.");
    }
}

ThrowDemo (0);
ThrowDemo (1);

// Output:
//  x equals zero - handled locally.
//  x does not equal zero - handled higher up.

需求

版本 5

請參閱

參考

try...catch...finally 陳述式

Error 物件