DOM

DOMException.name プロパティ

 編集:2022.11.08 by T.A.

[Edge]。読取専用。→

エラー名を表す文字列 DOMString を返します。

構文
DOMException.name
DOMException DOMException オブジェクト。

DOMString。→new DOMException()

エラー名

これは、一般的なエラー名の一覧です。独自にエラー名のセットを定義している API がありますので、これは必ずしも完全なリストではありません。

注記: 歴史的にエラーは、エラーの値を持つように定義した名前付き変数と、それに対応する値で識別されてきたため、一部の項目では過去に使用されたレガシーコードや定数名も記載します。

AbortError
操作が異常終了しました。(レガシーコード: 20、レガシー定数名: ABORT_ERR)
ConstraintError
制約が満たされないため、処理の中の変更操作が失敗しました(レガシーコードおよびレガシー定数名はありません)。
DataCloneError
オブジェクトを複製できません。(レガシーコード: 25、レガシー定数名: DATA_CLONE_ERR)
DataError
提供されたデータが不適切です(レガシーコードおよびレガシー定数名はありません)。
EncodingError
エンコードやデコードといった、エンコーディング操作が失敗しました(レガシーコードおよびレガシー定数名はありません)。
HierarchyRequestError
ノードツリーの階層が正しくありません。(レガシーコード: 3、レガシー定数名: HIERARCHY_REQUEST_ERR)
IndexSizeError
インデックスが許可された範囲から外れています。例えば、Range オブジェクトで発生することがあります。(レガシーコード: 1、レガシー定数名: INDEX_SIZE_ERR)
InvalidAccessError
オブジェクトが操作や引数をサポートしていません。(レガシーコード: 15、レガシー定数名: INVALID_ACCESS_ERR)
InvalidCharacterError
文字列に無効な文字が含まれています。(レガシーコード: 5、レガシー定数名: INVALID_CHARACTER_ERR)
InvalidModificationError
オブジェクトをこの方法で変更できません。(レガシーコード: 13、レガシー定数名: INVALID_MODIFICATION_ERR)
InvalidNodeTypeError
ノードが正しくない、または操作に対して誤った祖先が存在します。(レガシーコード: 24、レガシー定数名: INVALID_NODE_TYPE_ERR)
InvalidStateError
オブジェクトが無効な状態です。(レガシーコード: 11、レガシー定数名: INVALID_STATE_ERR)
NamespaceError
XML の名前空間によって、操作は許可されていません。(レガシーコード: 14、レガシー定数名: NAMESPACE_ERR)
NetworkError
ネットワークのエラーが発生しました。(レガシーコード: 19、レガシー定数名: NETWORK_ERR)
NoModificationAllowedError
オブジェクトを変更できません。(レガシーコード: 7、レガシー定数名: NO_MODIFICATION_ALLOWED_ERR)
NotAllowedError
現在の状況において、ユーザーエージェントまたはプラットフォームが要求を許可しませんでした。ユーザーが拒否されている可能性があります(レガシーコードおよびレガシー定数名はありません)。
NotFoundError
オブジェクトが見つかりません。(レガシーコード: 8、レガシー定数名: NOT_FOUND_ERR)
NotReadableError
入出力の読み取り操作が失敗しました(レガシーコードおよびレガシー定数名はありません)。
NotSupportedError
操作をサポートしていません。(レガシーコード: 9、レガシー定数名: NOT_SUPPORTED_ERR)
OperationError
操作に固有の理由で、操作が失敗しました(レガシーコードおよびレガシー定数名はありません)。
QuotaExceededError
クォータを超過しました。(レガシーコード: 22、レガシー定数名: QUOTA_EXCEEDED_ERR)
ReadOnlyError
"読み取り専用" の処理で変更操作を試みました(レガシーコードおよびレガシー定数名はありません)。
SecurityError
操作が安全ではありません。(レガシーコード: 18、レガシー定数名: SECURITY_ERR)
SyntaxError
文字列が期待されたパターンにマッチしません。(レガシーコード: 12、レガシー定数名: SYNTAX_ERR)
TimeoutError
操作がタイムアウトしました。(レガシーコード: 23、レガシー定数名: TIMEOUT_ERR)
TransactionInactiveError
現在アクティブではない、または終了した処理に対して要求を行いました(レガシーコードおよびレガシー定数名はありません)。
TypeMismatchError
オブジェクトの型が、期待された型に一致しません。(レガシーコード: 17、レガシー定数名: TYPE_MISMATCH_ERR)この値は非推奨であり、この値を持つ DOMException に代わり JavaScript の TypeError 例外が発生します。
UnknownError
未知の一時的な理由(例えばメモリー不足)によって、操作が失敗しました(レガシーコードおよびレガシー定数名はありません)。
URLMismatchError
与えられた URL が、別の URL と一致しません。(レガシーコード: 21、レガシー定数名: URL_MISMATCH_ERR)
VersionError
現在のバージョンより古いバージョンを使用するデータベースを開こうとしました(レガシーコードおよびレガシー定数名はありません)。
WrongDocumentError
オブジェクトが誤った Document 内に存在します。(レガシーコード: 4、レガシー定数名: WRONG_DOCUMENT_ERR)
mdnより

この例では、ボタンを押すとカスタム DOMException がスローされます。これがキャッチされ、カスタム エラー メッセージがアラートに表示されます。

HTML:

<button>Trigger DOM Exception</button>

<p id="output"></p>

JavaScript:

const button = document.querySelector('button');

button.onclick = () => {
    try {
        throw new DOMException("Custom DOM Exception Triggered.");
    } catch (error) {
        document.querySelector("#output").textContent = `Error: ${error.message}`;
    }
}

HTML:

<BUTTON id=IdTest>DOM 例外の発生</BUTTON><BR>
<SPAN id=IdLog></SPAN>

JavaScript: これを実行して、「DOM 例外の発生」ボタンを押してください。

function Job(){
  try{
    throw new DOMException("カスタム DOM 例外が発生しました");
  }catch(e){
    D=e;
    IdLog.innerHTML="Error:"+e.message;
  }
}
IdTest.onclick=Job;

得た内容:D

=[object]:Error: カスタム DOM 例外が発生しました
code=[number]:0
name=[string]:Error
message=[string]:カスタム DOM 例外が発生しました


テスト