URIError

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

* Some parts of this feature may have varying levels of support.

URIError 物件表示一個在全域 URI 處理函式使用方式錯誤時的錯誤。

URIError 是一個可序列化物件,所以它可以使用 structuredClone() 複製,或在 Worker 之間使用 postMessage() 複製。

URIErrorError 的子類別。

建構子

URIError()

建立一個新的 URIError 物件。

實例屬性

也繼承其父實例 Error 的實例屬性

這些屬性定義在 URIError.prototype 上,並由所有 URIError 實例共享。

URIError.prototype.constructor

建立實例物件的建構函式。對於 URIError 實例,初始值為 URIError 建構子。

URIError.prototype.name

表示錯誤類型的名稱。對於 URIError.prototype.name,初始值為 "URIError"

實例方法

繼承其父實例 Error 的實例方法

範例

捕捉 URIError

js
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.stack); // 錯誤的堆疊
}

建立 URIError

js
try {
  throw new URIError("你好");
} catch (e) {
  console.log(e instanceof URIError); // true
  console.log(e.message); // "你好"
  console.log(e.name); // "URIError"
  console.log(e.stack); // 錯誤的堆疊
}

規範

Specification
ECMAScript® 2026 Language Specification
# sec-native-error-types-used-in-this-standard-urierror

瀏覽器相容性

參見