--- title: NodeIterator slug: Web/API/NodeIterator tags: - API - DOM translation_of: Web/API/NodeIterator ---
NodeIterator
インターフェイスは、DOM のサブツリー内に存在するノードのリストのメンバーに対するイテレーターを表します。ノードは文書内に現れる順番で返されます。
以下のように {{domxref("Document.createNodeIterator()")}} メソッドを用いると NodeIterator
オブジェクトを作成することができます:
const nodeIterator = document.createNodeIterator(root, whatToShow, filter);
このインターフェイスが継承するプロパティはありません。
NodeIterator
を作成したときに指定したルートノードを表す {{domxref("Node")}} を返します。提供しなければならない {{domxref("Node")}} の型を表す定数で構成されるビットマスクである unsigned long
を返します。一致しないノードはスキップされますが、その子は関連があれば含まれます。
使用できる値は以下のとおりです。
定数 | 数値 | 説明 |
NodeFilter.SHOW_ALL |
-1 (unsigned long の最大値) |
すべてのノードを表示します。 |
NodeFilter.SHOW_ATTRIBUTE {{obsolete_inline}} |
2 |
属性の {{domxref("Attr")}} ノードを表示します。これはルートとして {{domxref("Attr")}} を含む {{domxref("NodeIterator")}} を作成する場合に限り、意味があります。この場合は、イテレーションやトラバーサルの最初の位置に属性ノードが現れることを意味します。属性はほかのノードの子ではありませんので、ドキュメントツリーをトラバーサルするときは出現しません。 |
NodeFilter.SHOW_CDATA_SECTION {{obsolete_inline}} |
8 |
{{domxref("CDATASection")}} ノードを表示します。 |
NodeFilter.SHOW_COMMENT |
128 |
{{domxref("Comment")}} ノードを表示します。 |
NodeFilter.SHOW_DOCUMENT |
256 |
{{domxref("Document")}} ノードを表示します。 |
NodeFilter.SHOW_DOCUMENT_FRAGMENT |
1024 |
{{domxref("DocumentFragment")}} ノードを表示します。 |
NodeFilter.SHOW_DOCUMENT_TYPE |
512 |
{{domxref("DocumentType")}} ノードを表示します。 |
NodeFilter.SHOW_ELEMENT |
1 |
{{domxref("Element")}} ノードを表示します。 |
NodeFilter.SHOW_ENTITY {{obsolete_inline}} |
32 |
{{domxref("Entity")}} ノードを表示します。これはルートとして {{domxref("Entity")}} を含む {{domxref("NodeIterator")}} を作成する場合に限り、意味があります。この場合は、イテレーションやトラバーサルの最初の位置に {{domxref("Entity")}} ノードが現れることを意味します。エンティティはドキュメントツリーの一部ではありませんので、ドキュメントツリーをトラバーサルするときは出現しません。 |
NodeFilter.SHOW_ENTITY_REFERENCE {{obsolete_inline}} |
16 |
{{domxref("EntityReference")}} ノードを表示します。 |
NodeFilter.SHOW_NOTATION {{obsolete_inline}} |
2048 |
{{domxref("Notation")}} ノードを表示します。これはルートとして {{domxref("Notation")}} を含む {{domxref("NodeIterator")}} を作成する場合に限り、意味があります。この場合は、イテレーションやトラバーサルの最初の位置に {{domxref("Notation")}} ノードが現れることを意味します。エンティティはドキュメントツリーの一部ではありませんので、ドキュメントツリーをトラバーサルするときは出現しません。 |
NodeFilter.SHOW_PROCESSING_INSTRUCTION |
64 |
{{domxref("ProcessingInstruction")}} ノードを表示します。 |
NodeFilter.SHOW_TEXT |
4 |
{{domxref("Text")}} ノードを表示します。 |
true
、後に固定される場合は false
になります。このインターフェイスが継承するメソッドはありません。
NodeIterator
を使用しなくなったことをエンジンに伝えていましたが、現在は不要です。null
を返します。null
を返します。仕様書 | 策定状況 | コメント |
---|---|---|
{{SpecName('DOM WHATWG', '#nodeiterator', 'NodeIterator')}} | {{Spec2('DOM WHATWG')}} | referenceNode および pointerBeforeReferenceNode プロパティを追加。expandEntityReferences プロパティを削除。detach() メソッドを no-op に変更。previousNode() および nextNode() メソッドを例外が発生しないように変更。 |
{{SpecName('DOM2 Traversal_Range', 'traversal.html#Iterator-overview', 'NodeIterator')}} | {{Spec2('DOM2 Traversal_Range')}} | 初期定義 |
{{Compat("api.NodeIterator")}}