Error Object (JavaScript)

Contains information about errors.

Syntax


      errorObj = new Error()  
errorObj = new Error([number])  
errorObj = new Error([number[, description]])  

Parameters

errorObj
Required. The variable name to which the Error object is assigned. The variable assignment is omitted when you create the error using a throw statement.

number
Optional. Numeric value assigned to an error. Zero if omitted.

description
Optional. Brief string that describes an error. Empty string if omitted.

Remarks

Whenever a run-time error occurs, an instance of the Error object is created to describe the error. This instance has two intrinsic properties that contain the description of the error (description property) and the error number (number property). For more information, see JavaScript Run-time Errors.

An error number is a 32-bit value. The upper 16-bit word is the facility code, while the lower word is the actual error code.

Error objects can also be explicitly created, using the syntax shown above, or thrown using the throw statement. In both cases, you can add any properties you choose to expand the capability of the Error object.

Typically, the local variable that is created in a try...catch statement refers to the implicitly created Error object. As a result, you can use the error number and description in any way you choose.

Example

The following example illustrates the use of the Error object.

function checkInput(x) {  
    try  
    {  
        if (isNaN(parseInt(x))) {  
            throw new Error("Input is not a number.");  
        }  
    }  
    catch(e)  
    {  
        document.write(e.description);  
    }  
}  

checkInput("not a number");  

Example

The following example illustrates the use of the implicitly created Error object.

try  
   {  
   // Cause an error.  
   x = y;  
   }  
catch(e)  
   {  
      document.write(e);  
      document.write ("<br />");  

      document.write ("Number: ");  
      document.write (e.number & 0xFFFF);  
      document.write ("<br />");  

      document.write ("Facility Code: ");  
      document.write(e.number>>16 & 0x1FFF);  
      document.write ("<br />");  

      document.write ("Description: ");  
      document.write (e.description);  
   }  

// Output:  
// ReferenceError: 'y' is undefined  
// Number: 5009  
// Facility Code: 10  
// Description: 'y' is undefined  

Methods

toString Method (Error) | valueOf Method (Date)

Properties

constructor Property (Error) | description Property | message Property | name Property | number Property | prototype Property (Error) | stack Property (Error) | stackTraceLimit Property (Error)

Requirements

Supported in the following document modes: Quirks, Internet Explorer 6 standards, Internet Explorer 7 standards, Internet Explorer 8 standards, Internet Explorer 9 standards, Internet Explorer 10 standards, Internet Explorer 11 standards. Also supported in Store apps (Windows 8 and Windows Phone 8.1). See Version Information.

See Also

new Operator
throw Statement
try...catch...finally Statement
var Statement
Hilo JavaScript sample app (Windows Store)