Node.childNodes読み取り専用プロパティは、最初の子ノードにインデックス0が割り当てられている、指定された要素の子nodesの現在のNodeListを返します。

構文

var nodeList = elementNodeReference.childNodes; 

簡単な使用方法

// parg is an object reference to a <p> element

// First check that the element has child nodes 
if (parg.hasChildNodes()) {
  var children = parg.childNodes;

  for (var i = 0; i < children.length; i++) {
    // do something with each child as children[i]
    // NOTE: List is live, adding or removing children will change the list
  }
}

ノードから全ての子を削除する

// This is one way to remove all children from a node
// box is an object reference to an element

while (box.firstChild) {
    //The list is LIVE so it will re-index each call
    box.removeChild(box.firstChild);
}

注記

ノードのコレクション内の項目はオブジェクトであり、文字列ではありません。node オブジェクトからデータを取得するには、そのプロパティ (たとえばelementNodeReference.childNodes[1].nodeName で名前を取得) を使用します。

documentオブジェクト自体には Doctype 宣言と root 要素 の2つの子があり、通常はdocumentElementと呼ばれます。 ((X)HTML文書ではこれがHTML要素です)

childNodesにはテキストノードやコメントノードなどの非要素ノードを含むすべての子ノードが含まれます。要素のみのコレクションを取得するには、代わりにParentNode.children を使用してください。

仕様

仕様 ステータス コメント
DOM
Node.childNodes の定義
現行の標準 変更なし
Document Object Model (DOM) Level 3 Core Specification
Node.childNodes の定義
廃止された 変更なし
Document Object Model (DOM) Level 2 Core Specification
Node.childNodes の定義
廃止された 変更なし
Document Object Model (DOM) Level 1 Specification
Node.childNodes の定義
廃止された 初回定義

ブラウザの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
基本対応Chrome 完全対応 ありEdge 完全対応 12Firefox 完全対応 1IE 完全対応 ありOpera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 4Opera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android 完全対応 あり

凡例

完全対応  
完全対応
実装状況不明  
実装状況不明

関連情報

ドキュメントのタグと貢献者

最終更新者: silverskyvicto,