DOMException

Baseline 廣泛可用 *

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

* 此特性的某些部分可能存在不同級別的支援。

注意:此功能在 Web Workers 中可用。

DOMException 介面表示呼叫 Web API 的方法或訪問屬性時發生的異常事件(稱為異常)。這是 Web API 中描述錯誤條件的方式。

每個異常都有一個名稱,這是一個簡短的“PascalCase”格式的字串,用於標識錯誤或異常情況。

DOMException 是一個 可序列化的物件,因此可以使用 structuredClone() 進行克隆,或者使用 postMessage()Worker 之間進行復制。

建構函式

DOMException()

返回一個具有指定訊息和名稱的 DOMException 物件。

例項屬性

DOMException.code 已棄用 只讀

返回一箇舊的錯誤程式碼常量,如果沒有匹配項則返回 0

DOMException.message 只讀

返回一個字串,表示與給定 錯誤名稱相關的訊息或描述。

DOMException.name 只讀

返回一個字串,其中包含與 錯誤名稱相關聯的字串之一。

錯誤名稱

此處列出了常見的錯誤名稱。某些 API 定義了自己的名稱集,因此這不一定是一個完整的列表。

以下已棄用的歷史錯誤沒有錯誤名稱,而是隻有一箇舊的程式碼值和舊的常量名稱

  • 舊程式碼值:2,舊常量名稱:DOMSTRING_SIZE_ERR
  • 舊程式碼值:6,舊常量名稱:NO_DATA_ALLOWED_ERR
  • 舊程式碼值:16,舊常量名稱:VALIDATION_ERR

注意:由於歷史上錯誤是透過與定義了該值的命名變數對應的數字值來標識的,因此下面的一些條目會指示過去使用的舊程式碼值和常量名稱。

IndexSizeError

索引不在允許的範圍內。例如,Range 物件可能會丟擲此異常。(舊程式碼值:1 和舊常量名稱:INDEX_SIZE_ERR

HierarchyRequestError

節點樹的層級不正確。(舊程式碼值:3 和舊常量名稱:HIERARCHY_REQUEST_ERR

WrongDocumentError

物件位於錯誤的 Document 中。(舊程式碼值:4 和舊常量名稱:WRONG_DOCUMENT_ERR

InvalidCharacterError

字串包含無效字元。(舊程式碼值:5 和舊常量名稱:INVALID_CHARACTER_ERR

NoModificationAllowedError

物件不能被修改。(舊程式碼值:7 和舊常量名稱:NO_MODIFICATION_ALLOWED_ERR

NotFoundError

此處找不到物件。(舊程式碼值:8 和舊常量名稱:NOT_FOUND_ERR

NotSupportedError

不支援該操作。(舊程式碼值:9 和舊常量名稱:NOT_SUPPORTED_ERR

InUseAttributeError

該屬性正在使用中。(舊程式碼值:10 和舊常量名稱:INUSE_ATTRIBUTE_ERR

InvalidStateError

物件處於無效狀態。(舊程式碼值:11 和舊常量名稱:INVALID_STATE_ERR

SyntaxError

字串不匹配預期的模式。(舊程式碼值:12 和舊常量名稱:SYNTAX_ERR

InvalidModificationError

物件不能以這種方式修改。(舊程式碼值:13 和舊常量名稱:INVALID_MODIFICATION_ERR

NamespaceError

XML 名稱空間不允許該操作。(舊程式碼值:14 和舊常量名稱:NAMESPACE_ERR

InvalidAccessError

物件不支援該操作或引數。(舊程式碼值:15 和舊常量名稱:INVALID_ACCESS_ERR

TypeMismatchError 已棄用

物件的型別不匹配預期的型別。(舊程式碼值:17 和舊常量名稱:TYPE_MISMATCH_ERR)此值已棄用;現在會丟擲 JavaScript 的 TypeError 異常,而不是此值的 DOMException

SecurityError

該操作不安全。(舊程式碼值:18 和舊常量名稱:SECURITY_ERR

NetworkError 實驗性

發生了網路錯誤。(舊程式碼值:19 和舊常量名稱:NETWORK_ERR

AbortError 實驗性

操作已被中止。(舊程式碼值:20 和舊常量名稱:ABORT_ERR

URLMismatchError 實驗性

給定的 URL 與另一個 URL 不匹配。(舊程式碼值:21 和舊常量名稱:URL_MISMATCH_ERR

QuotaExceededError

配額已超出。(舊程式碼值:22 和舊常量名稱:QUOTA_EXCEEDED_ERR)這是一個從 DOMException 派生的正確介面。

TimeoutError

操作超時。(舊程式碼值:23 和舊常量名稱:TIMEOUT_ERR

InvalidNodeTypeError 實驗性

節點對於此操作來說不正確或具有不正確的祖先。(舊程式碼值:24 和舊常量名稱:INVALID_NODE_TYPE_ERR

DataCloneError 實驗性

物件無法克隆。(舊程式碼值:25 和舊常量名稱:DATA_CLONE_ERR

EncodingError 實驗性

編碼或解碼操作失敗(無舊程式碼值和常量名稱)。

NotReadableError 實驗性

輸入/輸出讀取操作失敗(無舊程式碼值和常量名稱)。

UnknownError 實驗性

操作因未知的暫時原因而失敗(例如,記憶體不足)(無舊程式碼值和常量名稱)。

ConstraintError 實驗性

事務中的變異操作失敗,因為約束未得到滿足(無舊程式碼值和常量名稱)。

DataError 實驗性

提供的資料不充分(無舊程式碼值和常量名稱)。

TransactionInactiveError 實驗性

針對當前不活躍或已完成的事務發出了請求(無舊程式碼值和常量名稱)。

ReadOnlyError 實驗性

在“只讀”事務中嘗試了變異操作(無舊程式碼值和常量名稱)。

VersionError 實驗性

嘗試使用低於現有版本的版本開啟資料庫(無舊程式碼值和常量名稱)。

OperationError 實驗性

操作因操作特定的原因而失敗(無舊程式碼值和常量名稱)。

NotAllowedError

使用者代理或平臺在當前上下文中不允許該請求,可能是因為使用者拒絕了許可權(無舊程式碼值和常量名稱)。

規範

規範
Web IDL
# idl-DOMException

瀏覽器相容性

另見