AvailabilityJavaScript 1.5; JScript 5.5; ECMAScript v3 Inherits from/OverridesInherits from Object Constructornew Error( ) new Error(message) Arguments
ReturnsA newly constructed Error object. If the message argument is specified, the Error object will use it as the value of its message property; otherwise, it will use an implementation-defined default string as the value of that property. When the Error( ) constructor is called as a function, without the new operator, it behaves just as it does when called with the new operator. Properties
Methods
DescriptionInstances of the Error class represent errors or exceptions and are typically used with the throw and try/catch statements. The name property specifies the type of the exception, and the message property can be used to provide human-readable details about the exception. The JavaScript interpreter never throws Error object directly; instead, it throws instances of one of the Error subclasses such as SyntaxError or RangeError. In your own code you may find it convenient to throw Error objects to signal exceptions, or you may prefer to simply throw an error message or error code as a primitive string or number value. Note that the ECMAScript specification defines a toString( ) method for the Error class (it is inherited by each of the subclasses of Error) but that it does not require this toString( ) method to return a string that contains the contents of the message property. Therefore, you should not expect the toString( ) method to convert an Error object to convert to a meaningful human-readable string. To display an error message to a user, you should explicitly use the name and message properties of the Error object. ExampleYou might signal an exception with code like the following: function factorial(x) { if (x < 0) throw new Error("factorial: x must be >= 0"); if (x <= 1) return 1; else return x * factorial(x-1); } And if you catch an exception, you might display its to the user with code like the following (which uses the client-side Window.alert( ) method): try { &*(&/* an error is thrown here */ } catch(e) { if (e instanceof Error) { // Is it an instance of Error or a subclass? alert(e.name + ": " + e.message); } } See AlsoEvalError, RangeError, ReferenceError, SyntaxError, TypeError, URIError |