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.

Properties

URIError.prototype
Allows the addition of properties to a URIError object.

Methods

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

URIError instances

Properties

URIError.prototype.constructor
Specifies the function that created an instance's prototype.
URIError.prototype.message
Error message. Although ECMA-262 specifies that URIError should provide its own message property, in SpiderMonkey, it inherits Error.prototype.message.
URIError.prototype.name
Error name. Inherited from Error.
URIError.prototype.fileName
Path to file that raised this error. Inherited from Error.
URIError.prototype.lineNumber
Line number in file that raised this error. Inherited from Error.
URIError.prototype.columnNumber
Column number in line that raised this error. Inherited from Error.
URIError.prototype.stack
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 (ECMA-262)
The definition of 'URIError' in that specification.

Browser compatibility

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
URIErrorChrome Full support 1Edge Full support 12Firefox Full support 1IE Full support 5.5Opera Full support 5Safari Full support 1WebView Android Full support 1Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support 10.1Safari iOS Full support 1Samsung Internet Android Full support 1.0nodejs Full support Yes
URIError() constructorChrome Full support 1Edge Full support 12Firefox Full support 1IE Full support 5.5Opera Full support 5Safari Full support 1WebView Android Full support 1Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support 10.1Safari iOS Full support 1Samsung Internet Android Full support 1.0nodejs Full support Yes

Legend

Full support  
Full support

See also