Movatterモバイル変換


[0]ホーム

URL:


  1. 開発者向けのウェブ技術
  2. Web API
  3. Document
  4. createNodeIterator()

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。

View in EnglishAlways switch to English

Document: createNodeIterator() メソッド

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.

Document.createNodeIterator() メソッドは、新しいNodeIterator オブジェクトを返します。

構文

js
createNodeIterator(root)createNodeIterator(root, whatToShow)createNodeIterator(root, whatToShow, filter)

引数

root

NodeIterator の探索の開始地点になるルートノードです。

whatToShow省略可

オプションのunsigned long 値で、NodeFilter の定数プロパティを組み合わせて作られたビットマスクを表します。これは特定の種類のノードを絞り込みするのに便利な方法です。既定値は0xFFFFFFFF で、SHOW_ALL 定数を表します。

定数数値説明
NodeFilter.SHOW_ALL4294967295 (すなわちunsigned long の最大値)すべてのノードを表します。
NodeFilter.SHOW_ATTRIBUTE非推奨;2属性Attr ノードを表します。これは、Attr ノードをルートとしてNodeIterator を作成した場合にのみ意味を持ちます。この場合、その属性ノードが反復や探索の最初の位置に現れることを意味します。属性は他のノードの子ではないので、文書ツリーを探索しても現れません。
NodeFilter.SHOW_CDATA_SECTION非推奨;8CDATASection ノードを表します。
NodeFilter.SHOW_COMMENT128Comment ノードを表します。
NodeFilter.SHOW_DOCUMENT256Document ノードを表します。
NodeFilter.SHOW_DOCUMENT_FRAGMENT1024DocumentFragment ノードを表します。
NodeFilter.SHOW_DOCUMENT_TYPE512DocumentType ノードを表します。
NodeFilter.SHOW_ELEMENT1Element ノードを表します。
NodeFilter.SHOW_ENTITY非推奨;32古い値で、もう使用できません。
NodeFilter.SHOW_ENTITY_REFERENCE非推奨;16古い値で、もう使用できません。
NodeFilter.SHOW_NOTATION非推奨;2048古い値で、もう使用できません。
NodeFilter.SHOW_PROCESSING_INSTRUCTION64ShowsProcessingInstruction nodes.
NodeFilter.SHOW_TEXT4Text ノードを表します。
filter省略可

コールバック関数またはacceptNode() メソッドを持つオブジェクトです。この関数またはメソッドは、この関数またはメソッドは、サブツリー内の各ノードのうち whatToShow フラグで含まれると受け入れられたノードに対して呼び出され、反復可能オブジェクトのリストに記載するかどうかを決定します。このメソッドはNodeFilter.FILTER_ACCEPTNodeFilter.FILTER_REJECTNodeFilter.FILTER_SKIP のいずれかを返す必要があります。を参照してください。

返値

新しいNodeIterator オブジェクトです。

js
const nodeIterator = document.createNodeIterator(  document.body,  NodeFilter.SHOW_ELEMENT,  (node) =>    node.nodeName.toLowerCase() === "p"      ? NodeFilter.FILTER_ACCEPT      : NodeFilter.FILTER_REJECT,);const pars = [];let currentNode;while ((currentNode = nodeIterator.nextNode())) {  pars.push(currentNode);}

同じ動作ですが、acceptNode() メソッドを持つオブジェクトを使用しています。

js
const nodeIterator = document.createNodeIterator(  document.body,  NodeFilter.SHOW_ELEMENT,  {    acceptNode(node) {      return node.nodeName.toLowerCase() === "p"        ? NodeFilter.FILTER_ACCEPT        : NodeFilter.FILTER_REJECT;    },  },);const pars = [];let currentNode;while ((currentNode = nodeIterator.nextNode())) {  pars.push(currentNode);}

仕様書

Specification
DOM
# dom-document-createnodeiterator

ブラウザーの互換性

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2026 Movatter.jp