DOMException
Baseline 廣泛可用 *
注意:此功能在 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 |
瀏覽器相容性
載入中…
另見
core-js中提供了DOMException的 墊片(polyfill)DOMError