DOM - Objeto DOMException
La DOMException representa un evento anormal que ocurre cuando se usa un método o una propiedad.
Propiedades
La siguiente tabla enumera las propiedades del objeto DOMException
S.No. | Descripción de propiedad |
---|---|
1 | name Devuelve una DOMString que contiene una de las cadenas asociadas con una constante de error (como se ve en la tabla a continuación). |
Tipos de error
S.No. | Tipo y descripción |
---|---|
1 | IndexSizeError El índice no está en el rango permitido. Por ejemplo, esto puede ser lanzado por el objeto Range. (Valor de código heredado: 1 y nombre de constante heredado: INDEX_SIZE_ERR) |
2 | HierarchyRequestError La jerarquía del árbol de nodos no es correcta. (Valor de código heredado: 3 y nombre de constante heredado: HIERARCHY_REQUEST_ERR) |
3 | WrongDocumentError El objeto está en el documento incorrecto. (Valor de código heredado: 4 y nombre de constante heredado: WRONG_DOCUMENT_ERR) |
4 | InvalidCharacterError La cadena contiene caracteres no válidos. (Valor de código heredado: 5 y nombre de constante heredado: INVALID_CHARACTER_ERR) |
5 | NoModificationAllowedError El objeto no se puede modificar. (Valor de código heredado: 7 y nombre de constante heredado: NO_MODIFICATION_ALLOWED_ERR) |
6 | NotFoundError El objeto no se puede encontrar aquí. (Valor de código heredado: 8 y nombre de constante heredado: NOT_FOUND_ERR) |
7 | NotSupportedError La operación no es compatible. (Valor de código heredado: 9 y nombre de constante heredado: NOT_SUPPORTED_ERR) |
8 | InvalidStateError El objeto está en un estado no válido. (Valor de código heredado: 11 y nombre de constante heredado: INVALID_STATE_ERR) |
9 | SyntaxError La cadena no coincide con el patrón esperado. (Valor de código heredado: 12 y nombre de constante heredado: SYNTAX_ERR) |
10 | InvalidModificationError El objeto no se puede modificar de esta forma. (Valor de código heredado: 13 y nombre de constante heredado: INVALID_MODIFICATION_ERR) |
11 | NamespaceError Los espacios de nombres en XML no permiten la operación. (Valor de código heredado: 14 y nombre de constante heredado: NAMESPACE_ERR) |
12 | InvalidAccessError El objeto no admite la operación o el argumento. (Valor de código heredado: 15 y nombre de constante heredado: INVALID_ACCESS_ERR) |
13 | TypeMismatchError El tipo de objeto no coincide con el tipo esperado. (Valor de código heredado: 17 y nombre de constante heredado: TYPE_MISMATCH_ERR) Este valor está en desuso, ahora se genera la excepción de JavaScript TypeError en lugar de una DOMException con este valor. |
14 | SecurityError La operación es insegura. (Valor de código heredado: 18 y nombre de constante heredado: SECURITY_ERR) |
15 | NetworkError Ocurrió un error de red. (Valor de código heredado: 19 y nombre de constante heredado: NETWORK_ERR) |
dieciséis | AbortError La operación fue abortada. (Valor de código heredado: 20 y nombre de constante heredado: ABORT_ERR) |
17 | URLMismatchError La URL proporcionada no coincide con otra URL. (Valor de código heredado: 21 y nombre de constante heredado: URL_MISMATCH_ERR) |
18 | QuotaExceededError Se ha superado la cuota. (Valor de código heredado: 22 y nombre de constante heredado: QUOTA_EXCEEDED_ERR) |
19 | TimeoutError Se agotó el tiempo de espera de la operación. (Valor de código heredado: 23 y nombre de constante heredado: TIMEOUT_ERR) |
20 | InvalidNodeTypeError El nodo es incorrecto o tiene un antepasado incorrecto para esta operación. (Valor de código heredado: 24 y nombre de constante heredado: INVALID_NODE_TYPE_ERR) |
21 | DataCloneError El objeto no se puede clonar. (Valor de código heredado: 25 y nombre de constante heredado: DATA_CLONE_ERR) |
22 | EncodingError La operación de codificación, ya sea de codificación o decodificación, falló (sin valor de código heredado y nombre de constante). |
23 | NotReadableError La operación de lectura de entrada / salida falló (sin valor de código heredado y nombre de constante). |
Ejemplo
El siguiente ejemplo demuestra cómo el uso de un documento XML mal formado provoca una DOMException.
El contenido de error.xml es el siguiente:
<?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>
El siguiente ejemplo demuestra el uso del atributo de nombre :
<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>
Ejecución
Guarde este archivo como domexcption_name.html en la ruta del servidor (este archivo y error.xml deben estar en la misma ruta en su servidor). Obtendremos el resultado como se muestra a continuación:
TypeError