TypeError() constructor - JavaScript | MDN

Syntax

js

new TypeError()
new TypeError(message)
new TypeError(message, options)
new TypeError(message, fileName)
new TypeError(message, fileName, lineNumber)

TypeError()
TypeError(message)
TypeError(message, options)
TypeError(message, fileName)
TypeError(message, fileName, lineNumber)

Note: TypeError() can be called with or without new. Both create a new TypeError instance.

Parameters

message Optional

Human-readable description of the error

options Optional

An object that has the following properties:

cause Optional

A property indicating the specific cause of the error. When catching and re-throwing an error with a more-specific or useful error message, this property can be used to pass the original error.

fileName Optional Non-standard

The name of the file containing the code that caused the exception

lineNumber Optional Non-standard

The line number of the code that caused the exception

Examples

Catching a TypeError

js

try {
  null.f();
} catch (e) {
  console.log(e instanceof TypeError); // true
  console.log(e.message); // "null has no properties"
  console.log(e.name); // "TypeError"
  console.log(e.stack); // Stack of the error
}

Creating a TypeError

js

try {
  throw new TypeError("Hello");
} catch (e) {
  console.log(e instanceof TypeError); // true
  console.log(e.message); // "Hello"
  console.log(e.name); // "TypeError"
  console.log(e.stack); // Stack of the error
}

Specifications

Specification
ECMAScript® 2027 Language Specification
# sec-nativeerror-constructors

Browser compatibility

See also

Help improve MDN

Learn how to contribute

This page was last modified on by MDN contributors.