XPathResult - 表示求值 XPath 表达式而生成的结果
XPathResult
接口表示通过在给定节点的上下文中求值 XPath 表达式而生成的结果。由于 XPath 表达式可以产生多种结果类型,因此该接口可以确定和处理结果的类型和值。
属性
XPathResult.booleanValue
只读
一个 boolean
,表示 resultType
为 BOOLEAN_TYPE
的结果值。
XPathResult.invalidIteratorState
只读
表示迭代器已变得无效。如果 resultType
为 UNORDERED_NODE_ITERATOR_TYPE
或 ORDERED_NODE_ITERATOR_TYPE
,并且自返回此结果以来已对文档进行了修改,则为 true
。
XPathResult.numberValue
只读
一个 number
,表示 resultType
为 NUMBER_TYPE
的结果值。
XPathResult.resultType
只读
一个 number
,表示结果类型的代码,由类型常量定义。
XPathResult.singleNodeValue
只读
一个 Node
,表示单个节点结果的值,可以为 null
。
XPathResult.snapshotLength
只读
结果快照中的节点数。
XPathResult.stringValue
只读
一个 string
,表示 resultType
为 STRING_TYPE
的结果值。
方法
XPathResult.iterateNext()
如果结果是一个节点集,则此方法对其进行迭代并从中返回下一个节点;如果没有更多节点,则返回 null
。
XPathResult.snapshotItem()
返回快照集合的项,如果索引不在节点范围内,则返回 null
。与迭代器结果不同,快照不会失效,但如果发生了变化,它可能与当前文档不对应。
常量
结果类型定义的常量 | 值 | 描述 |
---|---|---|
ANY_TYPE |
0 |
包含表达式求值自然产生的任何类型的结果集。注意,如果结果是一个节点集,则 UNORDERED_NODE_ITERATOR_TYPE 始终是结果类型。 |
NUMBER_TYPE |
1 |
包含单个数字的结果。例如,这在使用 count() 函数的 XPath 表达式中很有用。 |
STRING_TYPE |
2 |
包含单个字符串的结果。 |
BOOLEAN_TYPE |
3 |
包含单个布尔值的结果。例如,这在使用 not() 函数的 XPath 表达式中很有用。 |
UNORDERED_NODE_ITERATOR_TYPE |
4 |
结果节点集,包含与表达式匹配的所有节点。节点可能不一定与它们在文档中出现的顺序相同。 |
ORDERED_NODE_ITERATOR_TYPE |
5 |
结果节点集,包含与表达式匹配的所有节点。结果集中的节点与它们在文档中出现的顺序相同。 |
UNORDERED_NODE_SNAPSHOT_TYPE |
6 |
结果节点集,包含与表达式匹配的所有节点的快照。节点可能不一定与它们在文档中出现的顺序相同。 |
ORDERED_NODE_SNAPSHOT_TYPE |
7 |
结果节点集,包含与表达式匹配的所有节点的快照。结果集中的节点与它们在文档中出现的顺序相同。 |
ANY_UNORDERED_NODE_TYPE |
8 |
结果节点集,包含与表达式匹配的任何单个节点。该节点不一定是文档中与表达式匹配的第一个节点。 |
FIRST_ORDERED_NODE_TYPE |
9 |
结果节点集,它包含文档中与表达式匹配的第一个节点。 |
规范
规范 | 状态 | 备注 |
---|---|---|
Document Object Model (DOM) Level 3 XPath Specification XPathResult 的定义 |
推荐 | 初始定义 |
桌面浏览器兼容性
特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
基础支持 | 支持 | ≤18 | 支持 | 未知 | 支持 | 未知 |
invalidIteratorState | 支持 | 12 | 支持 | 未知 | 支持 | 未知 |
iterateNext | 支持 | 12 | 支持 | 未知 | 支持 | 未知 |
resultType | 支持 | 12 | 支持 | 未知 | 支持 | 未知 |
snapshotItem | 支持 | 12 | 支持 | 未知 | 支持 | 未知 |
移动浏览器兼容性
特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
基础支持 | 支持 | 支持 | 未知 | 支持 | 未知 | 支持 | 未知 |
invalidIteratorState | 支持 | 支持 | 未知 | 支持 | 未知 | 支持 | 未知 |
iterateNext | 支持 | 支持 | 未知 | 支持 | 未知 | 支持 | 未知 |
resultType | 支持 | 支持 | 未知 | 支持 | 未知 | 支持 | 未知 |
snapshotItem | 支持 | 支持 | 未知 | 支持 | 未知 | 支持 | 未知 |