URIError

The URIError object represents an error when a global URI handling function was used in a wrong way.

Constructor

URIError()

Creates a new URIError object.

Instance properties

URIError.prototype.message

Error message.

URIError.prototype.name

Error name. Inherited from Error.

URIError.prototype.cause

Error cause. Inherited from Error.

URIError.prototype.fileName Non-Standard

Path to file that raised this error. Inherited from Error.

URIError.prototype.lineNumber Non-Standard

Line number in file that raised this error. Inherited from Error.

URIError.prototype.columnNumber Non-Standard

Column number in line that raised this error. Inherited from Error.

URIError.prototype.stack Non-Standard

Stack trace. Inherited from Error.

Examples

Catching an URIError

try {
  decodeURIComponent('%')
} catch (e) {
  console.log(e instanceof URIError)  // true
  console.log(e.message)              // "malformed URI sequence"
  console.log(e.name)                 // "URIError"
  console.log(e.fileName)             // "Scratchpad/1"
  console.log(e.lineNumber)           // 2
  console.log(e.columnNumber)         // 2
  console.log(e.stack)                // "@Scratchpad/2:2:3\n"
}

Creating an URIError

try {
  throw new URIError('Hello', 'someFile.js', 10)
} catch (e) {
  console.log(e instanceof URIError)  // true
  console.log(e.message)              // "Hello"
  console.log(e.name)                 // "URIError"
  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
ECMAScript Language Specification
# sec-native-error-types-used-in-this-standard-urierror

Browser compatibility

BCD tables only load in the browser

See also