---
sourceDocument: Xanadu API リファレンス
sourceDocumentLink: https://www.servicenow.com/docs/r/ja-JP/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu API リファレンス

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# XMLNodeIterator - スコープ指定

# XMLNodeIterator - スコープ指定 {#ariaid-title1}

* リリースバージョン: Xanadu
* 
* 更新日 2024年08月01日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：2分

XMLNodeIterator API は、XML 文書のノードを反復処理するためのメソッドを提供します。

XMLNodeIterator オブジェクトのスタンドアロンのインスタンスを作成するためのコンストラクターはありません。XMLNodeIterator オブジェクトを作成するには、[XMLNode オブジェクトの](https://www.servicenow.com/docs/CvEeoEScKQabXk8CC2PdAw#c_XMLNodeScopedAPI "XMLNode API は、XML ノードから値を照会するメソッドを提供します。XMLNode は XML 文字列を含む XMLDocument2 オブジェクトから抽出されます。")getChildNodeIterator() メソッドを使用します。

## XMLNodeIterator - hasNext() {#ariaid-title2}

反復にさらに要素がある場合は true を返します。
{#r_ScopedXMLNodeIteratorHasNext__table_d2h_pfc_2r__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 1. パラメーター]

{#r_ScopedXMLNodeIteratorHasNext__table_d2h_pfc_2r} {#r_ScopedXMLNodeIteratorHasNext__table_dcg_pg5_1r__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | 反復にさらに要素がある場合は true。 |
[表 : 2. 返される内容]

{#r_ScopedXMLNodeIteratorHasNext__table_dcg_pg5_1r}  

    var xmlString = "<test>" +
                    "  <one>" +
                    "    <two att=\"xxx\">abcd1234</two>" +
                    "    <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
                    "    <two>another</two>" +
                    "  </one>" +
                    "  <number>1234</number>" +
                    "</test>";
    var xmlDoc = new XMLDocument2();
    xmlDoc.parseXML(xmlString);
    var node = xmlDoc.getNode('//one');
    var iter= node.getChildNodeIterator();
    gs.info(iter.hasNext());

## XMLNodeIterator - next() {#ariaid-title3}

反復内の次の要素を取得します。XML が「かなり書式設定されている」場合、返される要素はスペースやタブに対する #text ノードになります。
{#r_ScopedXMLNodeIteratorNext__table_asl_4fc_2r__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 3. パラメーター]

{#r_ScopedXMLNodeIteratorNext__table_asl_4fc_2r} {#r_ScopedXMLNodeIteratorNext__table_dnj_dh5_1r__entry__2}

| タイプ | 説明 |
|-|-|
| XMLNode | 反復内の次の要素。 |
[表 : 4. 返される内容]

{#r_ScopedXMLNodeIteratorNext__table_dnj_dh5_1r}  

    var xmlString = "<test>" +
                    "  <one>" +
                    "    <two att=\"xxx\">abcd1234</two>" +
                    "    <three boo=\"yah\" att=\"yyy\">1234abcd</three>" +
                    "    <two>another</two>" +
                    "  </one>" +
                    "  <number>1234</number>" +
                    "</test>";
    var xmlDoc = new XMLDocument2();
    xmlDoc.parseXML(xmlString);
    var node = xmlDoc.getNode('//one');
    var iter= node.getChildNodeIterator();
    while(iter.hasNext()) {
       var n = iter.next();
       gs.info('Node name: ' +  n.getNodeName());
       gs.info('Node value: ' +  n.getNodeValue());
    }

出力：

    Node name: #text
    Node value:     
    Node name: two
    Node value: null
    Node name: #text
    Node value:     
    Node name: three
    Node value: null
    Node name: #text
    Node value:     
    Node name: two
    Node value: null
    Node name: #text
    Node value:


