DOM-DOMException 객체
예외 : DOMException는 메소드 또는 속성이 사용될 때 일어나는 비정상적인 이벤트를 나타낸다.
속성
아래 표는 DOMException 객체의 속성을 나열합니다.
S. 아니. | 속성 및 설명 |
---|---|
1 | name 오류 상수와 관련된 문자열 중 하나를 포함하는 DOMString을 반환합니다 (아래 표 참조). |
오류 유형
S. 아니. | 유형 및 설명 |
---|---|
1 | IndexSizeError 색인이 허용 된 범위를 벗어났습니다. 예를 들어, 이것은 Range 개체에 의해 throw 될 수 있습니다. (레거시 코드 값 : 1 및 레거시 상수 이름 : INDEX_SIZE_ERR) |
2 | HierarchyRequestError 노드 트리 계층 구조가 올바르지 않습니다. (레거시 코드 값 : 3 및 레거시 상수 이름 : HIERARCHY_REQUEST_ERR) |
삼 | WrongDocumentError 개체가 잘못된 문서에 있습니다. (레거시 코드 값 : 4 및 레거시 상수 이름 : WRONG_DOCUMENT_ERR) |
4 | InvalidCharacterError 문자열에 잘못된 문자가 있습니다. (레거시 코드 값 : 5 및 레거시 상수 이름 : INVALID_CHARACTER_ERR) |
5 | NoModificationAllowedError 개체를 수정할 수 없습니다. (레거시 코드 값 : 7 및 레거시 상수 이름 : NO_MODIFICATION_ALLOWED_ERR) |
6 | NotFoundError 여기에서 개체를 찾을 수 없습니다. (레거시 코드 값 : 8 및 레거시 상수 이름 : NOT_FOUND_ERR) |
7 | NotSupportedError 작업이 지원되지 않습니다. (레거시 코드 값 : 9 및 레거시 상수 이름 : NOT_SUPPORTED_ERR) |
8 | InvalidStateError 개체가 잘못된 상태에 있습니다. (레거시 코드 값 : 11 및 레거시 상수 이름 : INVALID_STATE_ERR) |
9 | SyntaxError 문자열이 예상 패턴과 일치하지 않습니다. (레거시 코드 값 : 12 및 레거시 상수 이름 : SYNTAX_ERR) |
10 | InvalidModificationError 이러한 방식으로 개체를 수정할 수 없습니다. (레거시 코드 값 : 13 및 레거시 상수 이름 : INVALID_MODIFICATION_ERR) |
11 | NamespaceError XML의 네임 스페이스에서 작업이 허용되지 않습니다. (레거시 코드 값 : 14 및 레거시 상수 이름 : NAMESPACE_ERR) |
12 | InvalidAccessError 개체가 작업 또는 인수를 지원하지 않습니다. (레거시 코드 값 : 15 및 레거시 상수 이름 : INVALID_ACCESS_ERR) |
13 | TypeMismatchError 개체 유형이 예상 유형과 일치하지 않습니다. (레거시 코드 값 : 17 및 레거시 상수 이름 : TYPE_MISMATCH_ERR)이 값은 더 이상 사용되지 않으며 이제이 값이있는 DOMException 대신 JavaScript TypeError 예외가 발생합니다. |
14 | SecurityError 작업이 안전하지 않습니다. (레거시 코드 값 : 18 및 레거시 상수 이름 : SECURITY_ERR) |
15 | NetworkError 네트워크 오류가 발생했습니다. (레거시 코드 값 : 19 및 레거시 상수 이름 : NETWORK_ERR) |
16 | AbortError 작업이 중단되었습니다. (레거시 코드 값 : 20 및 레거시 상수 이름 : ABORT_ERR) |
17 | URLMismatchError 주어진 URL이 다른 URL과 일치하지 않습니다. (레거시 코드 값 : 21 및 레거시 상수 이름 : URL_MISMATCH_ERR) |
18 | QuotaExceededError 할당량이 초과되었습니다. (기존 코드 값 : 22 및 기존 상수 이름 : QUOTA_EXCEEDED_ERR) |
19 | TimeoutError 작업 시간이 초과되었습니다. (레거시 코드 값 : 23 및 레거시 상수 이름 : TIMEOUT_ERR) |
20 | InvalidNodeTypeError 노드가 잘못되었거나이 작업에 대한 잘못된 조상이 있습니다. (레거시 코드 값 : 24 및 레거시 상수 이름 : INVALID_NODE_TYPE_ERR) |
21 | DataCloneError 개체를 복제 할 수 없습니다. (레거시 코드 값 : 25 및 레거시 상수 이름 : DATA_CLONE_ERR) |
22 | EncodingError 인코딩 또는 디코딩 작업 인 인코딩 작업이 실패했습니다 (레거시 코드 값 및 상수 이름 없음). |
23 | NotReadableError 입력 / 출력 읽기 작업이 실패했습니다 (레거시 코드 값 및 상수 이름 없음). |
예
다음 예제는 형식이 올바르지 않은 XML 문서를 사용하면 DOMException이 발생하는 방법을 보여줍니다.
error.xml 내용은 다음과 같습니다.
<?xml version = "1.0" encoding = "UTF-8" standalone = "no" ?>
<Company id = "companyid">
<Employee category = "Technical" id = "firstelement" type = "text/html">
<FirstName>Tanmay</first>
<LastName>Patil</LastName>
<ContactNo>1234567890</ContactNo>
<Email>[email protected]</Email>
</Employee>
</Company>
다음 예제는 이름 속성 의 사용법을 보여줍니다 -
<html>
<head>
<script>
function loadXMLDoc(filename) {
if (window.XMLHttpRequest) {
xhttp = new XMLHttpRequest();
} else // code for IE5 and IE6 {
xhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET",filename,false);
xhttp.send();
return xhttp.responseXML;
}
</script>
</head>
<body>
<script>
try {
xmlDoc = loadXMLDoc("/dom/error.xml");
var node = xmlDoc.getElementsByTagName("to").item(0);
var refnode = node.nextSibling;
var newnode = xmlDoc.createTextNode('That is why you fail.');
node.insertBefore(newnode, refnode);
} catch(err) {
document.write(err.name);
}
</script>
</body>
</html>
실행
이 파일을 서버 경로에 domexcption_name.html 로 저장 합니다 (이 파일과 error.xml은 서버의 동일한 경로에 있어야 함). 아래와 같이 출력을 얻습니다.
TypeError