NodeIterator: previousNode() 方法

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

NodeIterator.previousNode() 方法返回 NodeIterator 所表示的集合中的上一个节点,并将迭代器的位置向后移动。

当当前节点是集合中的第一个节点时,此方法返回 null

在旧版本的浏览器中,根据旧版本的规范,如果在调用 NodeIterator.detach() 方法后调用此方法,则可能会抛出 INVALID_STATE_ERR DOMException。较新的浏览器永远不会抛出此异常。

语法

js
previousNode()

参数

无。

返回值

一个 Node,表示此 NodeIterator 所表示的集合中当前节点之前的节点,或者如果当前节点是集合中的第一个节点,则为 null

示例

js
const nodeIterator = document.createNodeIterator(
  document.body,
  NodeFilter.SHOW_ELEMENT,
  {
    acceptNode(node) {
      return NodeFilter.FILTER_ACCEPT;
    },
  },
);
currentNode = nodeIterator.nextNode(); // returns the next node
previousNode = nodeIterator.previousNode(); // same result, since we backtracked to the previous node

规范

规范
DOM
# dom-nodeiterator-previousnode

浏览器兼容性

另见