Join MDN and developers like you at Mozilla's View Source conference, 12-14 September in Berlin, Germany. Learn more at https://viewsourceconf.org

Our volunteers haven't translated this article into Română yet. Join us and help get the job done!

The EvalError object indicates an error regarding the global eval() function. This exception is not thrown by JavaScript anymore, however the EvalError object remains for compatibility.

Syntax

new EvalError([message[, fileName[, lineNumber]]])

Parameters

message
Optional. Human-readable description of the error
fileName
Optional. The name of the file containing the code that caused the exception
lineNumber
Optional. The line number of the code that caused the exception

Properties

EvalError.prototype
Allows the addition of properties to an EvalError object.

Methods

The global EvalError contains no methods of its own, however, it does inherit some methods through the prototype chain.

EvalError instances

Properties

EvalError.prototype.constructor
Specifies the function that created an instance's prototype.
EvalError.prototype.message
Error message. Although ECMA-262 specifies that EvalError should provide its own message property, in SpiderMonkey, it inherits Error.prototype.message.
EvalError.prototype.name
Error name. Inherited from Error.
EvalError.prototype.fileName
Path to file that raised this error. Inherited from Error.
EvalError.prototype.lineNumber
Line number in file that raised this error. Inherited from Error.
EvalError.prototype.columnNumber
Column number in line that raised this error. Inherited from Error.
EvalError.prototype.stack
Stack trace. Inherited from Error.

Methods

Although the EvalError prototype object does not contain any methods of its own, EvalError instances do inherit some methods through the prototype chain.

Examples

EvalError is not used in the current ECMAScript specification and will thus not be thrown by the runtime. However, the object itself remains for backwards compatibility with earlier versions of the specification.

Creating an EvalError

try {
  throw new EvalError('Hello', 'someFile.js', 10);
} catch (e) {
  console.log(e instanceof EvalError); // true
  console.log(e.message);              // "Hello"
  console.log(e.name);                 // "EvalError"
  console.log(e.fileName);             // "someFile.js"
  console.log(e.lineNumber);           // 10
  console.log(e.columnNumber);         // 0
  console.log(e.stack);                // "@Scratchpad/2:2:9\n"
}

Specifications

Specification Status Comment
ECMAScript 3rd Edition (ECMA-262) Standard Initial definition.
ECMAScript 5.1 (ECMA-262)
The definition of 'EvalError' in that specification.
Standard Not used in this specification. Present for backward compatibility.
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'EvalError' in that specification.
Standard Not used in this specification. Present for backward compatibility.
ECMAScript 2017 Draft (ECMA-262)
The definition of 'EvalError' in that specification.
Draft  

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

See also

Document Tags and Contributors

 Last updated by: fscholz,