gpt4 book ai didi

javascript - 什么抛出 DOMError

转载 作者:数据小太阳 更新时间:2023-10-29 05:27:10 24 4
gpt4 key购买 nike

介绍

DOMError是由 DOM 定义的接口(interface)。

我想检查浏览器是否支持它。一个简单的检查是

window.DOMError !== undefined

更好的检查是使用抛出 DOMError 的操作并检查

err instanceof DOMError === true

问题

哪些操作会抛出 DOMError?

最佳答案

DOMError 是一种非基于异常的错误条件。它永远不会被抛出,除非同时实现 DOMErrorDOMException 的对象可能会作为 DOMException 抛出。

预计在许多 DOM 实现中实现 DOMErrorDOMException 的具体类可能是相同的,但为了语言的优势,它们在规范中是分开的绑定(bind)到 DOMException,这将使重用现有实现变得困难。例如,没有 native 异常的语言可能有一个带外错误信号 channel ,它不能像 DOMError 那样真正作为对象转储到属性上。

在 DOM4 中起草的 DOMError 是一个普通的占位符,只包含一个名称字符串。预计任何基于它构建的规范都会添加一些属性来封装更多有用的信息。

目前它被W3使用File API FileReader 中的错误,它是一个异步接口(interface),没有任何有用的地方可以抛出异常。文件 API 尚未向 DOMError 或子接口(interface)添加任何额外属性,但它和 DOM4 规范在接近推荐状态之前可能会发生变化。

最初在 DOM Level 3 Core 中引入的 DOMError 提供了一个扩展的错误接口(interface),其中包含有关文档中错误发生位置的更深入的信息。它旨在用于 DOM Level 3 LS 中的序列化器和解析器进程,但包含在核心中以使用 document.normalizeDocument 方法,该方法也模拟序列化/解析周期。

今天的浏览器没有 DOMError,因为它们不支持任何 DOM 4、DOM Level 3 LS 或 normalizeDocument。但是其他非浏览器 DOM 实现可能; pxdom其中一个具有 DOM 3 接口(interface)。

关于javascript - 什么抛出 DOMError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9045875/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com