gpt4 book ai didi

javascript - 如何检查 JS 对象是否实现了一些 DOM IDL 接口(interface)?

转载 作者:行者123 更新时间:2023-11-30 17:20:45 27 4
gpt4 key购买 nike

Specs假设文档节点满足 HTMLElement IDL 接口(interface)。计算结果为 true:

document.querySelectorAll('a')[0] instanceof HTMLElement

这是一种正确的测试方法吗(通过 instanceof HTMLElement)?

最佳答案

我不太确定为什么你想这样做,但它应该在现代浏览器中工作。它不适用于 IE8 或更低版本。

如果您的目标是查看节点是元素节点还是文本节点或类似节点,更广泛兼容的方法是使用 nodeType property :

document.querySelector('a').nodeType === 1

类型由 DOM 规范给出,作为 Node interface 定义的一部分。 (1 = 元素)。

如果您的目标是测试元素是否是特定类型 元素(HTMLAnchorElement 等),请使用nodeName或者(如果你知道它是一个元素)tagName。在 HTML(不是 XHTML)文档中,这些是大写的标签名称,例如

console.log(document.querySelector('a').nodeName); // "A"

关于javascript - 如何检查 JS 对象是否实现了一些 DOM IDL 接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25185059/

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