NodeIterator: whatToShow 属性

NodeIterator.whatToShow 只读属性表示一个无符号整数,该整数表示一个位掩码,表示NodeIterator应返回哪种类型的节点。

一个无符号整数

可以组合形成位掩码的值为

常量 数值 描述
NodeFilter.SHOW_ALL 4294967295(即unsigned long的最大值) 显示所有节点。
NodeFilter.SHOW_ATTRIBUTE 已弃用 2 显示属性Attr节点。这仅在使用Attr节点作为其根节点创建NodeIteratorTreeWalker时才有意义;在这种情况下,这意味着属性节点将出现在迭代或遍历的第一个位置。由于属性永远不是其他节点的子节点,因此在遍历文档树时不会出现它们。
NodeFilter.SHOW_CDATA_SECTION 已弃用 8 显示CDATASection节点。
NodeFilter.SHOW_COMMENT 128 显示Comment节点。
NodeFilter.SHOW_DOCUMENT 256 显示Document节点。
NodeFilter.SHOW_DOCUMENT_FRAGMENT 1024 显示DocumentFragment节点。
NodeFilter.SHOW_DOCUMENT_TYPE 512 显示DocumentType节点。
NodeFilter.SHOW_ELEMENT 1 显示Element节点。
NodeFilter.SHOW_ENTITY 已弃用 32 旧版,不再使用。
NodeFilter.SHOW_ENTITY_REFERENCE 已弃用 16 旧版,不再使用。
NodeFilter.SHOW_NOTATION 已弃用 2048 旧版,不再使用。
NodeFilter.SHOW_PROCESSING_INSTRUCTION 64 显示ProcessingInstruction节点。
NodeFilter.SHOW_TEXT 4 显示Text节点。

示例

js
const nodeIterator = document.createNodeIterator(
  document.body,
  NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT,
  { acceptNode: (node) => NodeFilter.FILTER_ACCEPT },
);
if (
  nodeIterator.whatToShow & NodeFilter.SHOW_ALL ||
  nodeIterator.whatToShow & NodeFilter.SHOW_COMMENT
) {
  // nodeIterator will show comments
}

规范

规范
DOM 标准
# dom-nodeiterator-whattoshow

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅