NodeIterator
NodeIterator 介面表示一個用於按照文件順序遍歷 DOM 子樹節點的迭代器。
可以使用 Document.createNodeIterator() 方法建立 NodeIterator,如下所示:
js
const nodeIterator = document.createNodeIterator(root, whatToShow, filter);
例項屬性
此介面不繼承任何屬性。
NodeIterator.root只讀-
返回一個
Node,表示建立NodeIterator時指定的根節點。 NodeIterator.whatToShow只讀-
返回一個
unsigned long位掩碼,描述要匹配的Node型別。不匹配的節點將被跳過,但相關的子節點可能包含在內。可能的位掩碼值是
NodeFilter介面中的常量:常量 數值 描述 NodeFilter.SHOW_ALL4294967295(即unsigned long的最大值)顯示所有節點。 NodeFilter.SHOW_ATTRIBUTE已棄用2顯示屬性 Attr節點。這僅在以Attr節點作為根節點建立NodeIterator時才有意義;在這種情況下,它表示屬性節點將出現在迭代或遍歷的第一個位置。由於屬性永遠不是其他節點的子節點,因此在遍歷文件樹時它們不會出現。NodeFilter.SHOW_CDATA_SECTION已棄用8顯示 CDATASection節點。NodeFilter.SHOW_COMMENT128顯示 Comment節點。NodeFilter.SHOW_DOCUMENT256顯示 Document節點。NodeFilter.SHOW_DOCUMENT_FRAGMENT1024顯示 DocumentFragment節點。NodeFilter.SHOW_DOCUMENT_TYPE512顯示 DocumentType節點。NodeFilter.SHOW_ELEMENT1顯示 Element節點。NodeFilter.SHOW_ENTITY已棄用32遺留,不再使用。 NodeFilter.SHOW_ENTITY_REFERENCE已棄用16遺留,不再使用。 NodeFilter.SHOW_NOTATION已棄用2048遺留,不再使用。 NodeFilter.SHOW_PROCESSING_INSTRUCTION64顯示 ProcessingInstruction節點。NodeFilter.SHOW_TEXT4顯示 Text節點。 NodeIterator.filter只讀-
返回用於選擇相關節點的
NodeFilter。 NodeIterator.referenceNode只讀-
返回迭代器所錨定的
Node。 NodeIterator.pointerBeforeReferenceNode只讀-
返回一個布林值,指示
NodeIterator是否錨定在NodeIterator.referenceNode*之前*。如果為false,則表示迭代器錨定在引用節點*之後*。
例項方法
此介面不繼承任何方法。
NodeIterator.detach()已棄用-
這是一個遺留方法,不再有任何作用。以前它用於標記一個
NodeIterator已被釋放,以便可以被垃圾回收。 NodeIterator.previousNode()-
返回文件中的上一個
Node,如果沒有則返回null。 NodeIterator.nextNode()-
返回文件中的下一個
Node,如果沒有則返回null。
規範
| 規範 |
|---|
| DOM # interface-nodeiterator |
瀏覽器相容性
載入中…
另見
- 建立方法:
Document.createNodeIterator()。 - 相關介面:
TreeWalker