A DOMError
- это ошибка, не связанная с исключениями. Он никогда не будет брошен, за исключением случаев, когда объект, который реализует как DOMError
, так и DOMException
, может быть брошен как DOMException
.
Ожидается, что конкретный класс, реализующий DOMError
и DOMException
, может быть одинаковым во многих реализациях DOM, но они разделены в спецификации для удобства языков с привязками к DOMException
, что усложнит процесс. повторно использовать существующую реализацию. Например, языки без собственных исключений могут иметь внеполосный канал сигнализации об ошибках, который на самом деле не может быть выгружен как объект в свойство, такое как DOMError
can.
DOMError, составленное в DOM4, является тривиальным заполнителем, содержащим только строку имени. Ожидается, что любые спецификации, основанные на нем, добавят некоторые свойства для инкапсуляции более полезной информации.
В настоящее время он используется W3 Файловым API для ошибок в FileReader
, которые, будучи асинхронным интерфейсом, нигде не могут генерировать исключения. Файловый API еще не добавляет никаких дополнительных свойств к DOMError
или подинтерфейсу, но и он, и спецификация DOM4, вероятно, претерпят изменения, прежде чем достигнут состояния Рекомендации.
DOMError, изначально представленный в DOM Level 3 Core, предоставлял расширенный интерфейс ошибок с более подробной информацией о том, где в документе произошла ошибка. Он был предназначен для процессов сериализатора и синтаксического анализатора в DOM Level 3 LS, но включен в Core для использования метода document.normalizeDocument
, который также имитирует цикл сериализации / анализа.
Современные браузеры не имеют DOMError, потому что они не поддерживают DOM 4, DOM Level 3 LS или normalizeDocument
. Но другие реализации DOM, не относящиеся к браузеру, могут; pxdom для одного имеет интерфейсы DOM 3.