---
sourceDocument: Referência de API do Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Referência de API do Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# XMLNodeIterator - com escopo

# XMLNodeIterator - com escopo {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 1 min. de leitura

A API XMLNodeIterator fornece métodos para iterar por meio de um nó de um documento XML.

Não há construtores para criar uma instância autônoma de um objeto XMLNodeIterator. Para criar um objeto XMLNodeIterator, use o método getChildNodeIterator() do [objeto XMLNode](https://servicenow-prod.fluidtopics.net/S57yrqJ2PZ2d2QbVnagweQ#c_XMLNodeScopedAPI "A API XMLNode fornece métodos para consultar valores de nós XML. XMLNodes são extraídos de objetos XMLDocument2, que contêm cadeias de caracteres XML.").

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

Retorna verdadeiro se a iteração tiver mais elementos.
{#r_ScopedXMLNodeIteratorHasNext__table_d2h_pfc_2r__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 1. Parâmetros]

{#r_ScopedXMLNodeIteratorHasNext__table_d2h_pfc_2r} {#r_ScopedXMLNodeIteratorHasNext__table_dcg_pg5_1r__entry__2}

| Tipo | Descrição |
|-|-|
| Booliano | Verdadeiro se a iteração tiver mais elementos. |
[Tabela 2. Retorna]

{#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}

Obtém o próximo elemento na iteração. O elemento retornado pode ser um nó #text para os espaços/guias se o XML estiver "formatado corretamente".
{#r_ScopedXMLNodeIteratorNext__table_asl_4fc_2r__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 3. Parâmetros]

{#r_ScopedXMLNodeIteratorNext__table_asl_4fc_2r} {#r_ScopedXMLNodeIteratorNext__table_dnj_dh5_1r__entry__2}

| Tipo | Descrição |
|-|-|
| XMLNode | O próximo elemento na iteração. |
[Tabela 4. Retorna]

{#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());
    }

Saída:

    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:


