Freigeben über


throw-Anweisung

Aktualisiert: November 2007

Generiert einen Fehlerzustand, der von einer try...catch...finally-Anweisung behandelt werden kann.

throw [exception]

Argumente

  • exception
    Optional. Beliebiger Ausdruck.

Hinweise

Die throw-Anweisung kann ohne Argument verwendet werden, allerdings nur dann, wenn die throw-Anweisung in einem catch-Block enthalten ist. In dieser Situation löst die throw-Anweisung erneut den Fehler aus, der von der umgebenden catch-Anweisung abgefangen wurde. Wenn ein Argument übergeben wird, löst die throw-Anweisung den Wert von exception aus.

Beispiel

Im folgenden Beispiel wird ein Fehler anhand eines übergebenen Werts generiert, und es wird erläutert, wie dieser Fehler in einer Hierarchie von try...catch...finally-Anweisungen behandelt wird:

function TryCatchDemo(x){
   try {
      try {
      if (x == 0)                            // Evalute argument.
         throw "x equals zero";              // Throw an error.
      else
         throw "x does not equal zero";      // Throw a different error.
      }
      catch(e) {                             // Handle "x=0" errors here.
         if (e == "x equals zero")           // Check for a handled error.
            return(e + " handled locally."); // Return error message.
         else                                // Can't handle error here.
            throw e;                         // Rethrow the error for next
      }                                      // error handler.
   }
   catch(e) {                                // Handle other errors here.
      return(e + " error handled higher up."); // Return error message.
   }
}
print(TryCatchDemo(0)+ "\n");
print(TryCatchDemo(1));

Anforderungen

Version 5

Siehe auch

Referenz

try...catch...finally-Anweisung

Error-Objekt