XPathResult: iterateNext() 方法
iterateNext()
方法是 XPathResult
接口的方法,用于迭代节点集结果并返回其中的下一个节点,如果不再有节点则返回 null
。
语法
js
iterateNext()
参数
无。
返回值
XPathResult
的节点集中下一个 Node
。
异常
TYPE_ERR
如果 XPathResult.resultType
不是 UNORDERED_NODE_ITERATOR_TYPE
或 ORDERED_NODE_ITERATOR_TYPE
,则会抛出一个类型为 TYPE_ERR
的 XPathException
。
INVALID_STATE_ERR
如果自返回结果以来文档发生了更改,则会抛出一个类型为 INVALID_STATE_ERR
的 XPathException
。
示例
以下示例演示了 iterateNext()
方法的用法。
HTML
html
<div>XPath example</div>
<div>Tag names of the matched nodes: <output></output></div>
JavaScript
js
const xpath = "//div";
const result = document.evaluate(
xpath,
document,
null,
XPathResult.ANY_TYPE,
null,
);
let node = null;
const tagNames = [];
while ((node = result.iterateNext())) {
tagNames.push(node.localName);
}
document.querySelector("output").textContent = tagNames.join(", ");
结果
规范
规范 |
---|
DOM 标准 # dom-xpathresult-iteratenext |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。