XMLHelper

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 1 Minute Lesedauer
  • Die XML-Helper-Skripteinbindung erleichtert das Parsen von XML in Skripts.

    Verwenden Sie die folgenden Methoden, um XML in JSON oder JSON in XML zu exportieren.
    • Die Methode toObject() gibt die XML-Elemente als JSON-Eigenschaften zurück. Diese Methode funktioniert ordnungsgemäß, unabhängig davon, ob der angegebene Parameter ein XML-Dokument oder eine XML-Zeichenfolge ist. Alternativ zur Angabe der XML-Eingabe im Konstruktor verfügt diese Methode über einen optionalen Parameter für die Konvertierung.
    • Die toXMLDoc() -Methode gibt JSON in Form von XML-Elementen zurück.
    Hinweis:
    Sie müssen kaufmännische Und-Zeichen (& amp; amp) in Ihrer XML mit einem Escapezeichen versehen, da die Konvertierung im Hintergrund ansonsten fehlschlägt.

    Beispiel

    Das folgende Beispiel zeigt, wie ein XML-Dokument in JSON konvertiert wird, und verwendet eine rekursive Funktion, um jedes Mitglied auszugeben. Die rekursive Funktion gibt an, wie die XML-Dokumentstruktur als JSON gerendert wird.
    var xmlString = "<company>" + "<employee>" + "<id>10</id>"
     + "<firstname>Tom</firstname>" + "<lastname>Cruise</lastname>" + "<test>test1</test>"
     + "<test>test3</test>" + "</employee>" + "<employee>" + "<id>20</id>" + "<firstname>Paul</firstname>"
     + "<lastname>Enderson</lastname>" + "<test>test6</test>" + "<test>test5</test>" + "</employee>" + "<employee>"
     + "<id>30</id>" + "<firstname>Paul</firstname>" + "<lastname>Bush</lastname>" + "<test>test2</test>"
     + "<test>test4</test>" + "</employee>" + "</company>";
    var helper = new XMLHelper(xmlString);
    var obj = helper.toObject();
    logObj(obj, "*");
    
    function logObj(obj, sep) {
      for (x in obj) {
        if (typeof obj[x] != "function") {
          gs.log(sep + x + ":: " + obj[x]);
        }
        logObj(obj[x], sep + "*");
      }
    }
    Ausgabe:
    *** Script: *employee:: [object Object],[object Object],[object Object]
    *** Script: **2:: [object Object]
    *** Script: ***id:: 30
    *** Script: ***test:: test2,test4
    *** Script: ****0:: test2
    *** Script: ****1:: test4
    *** Script: ***firstname:: Paul
    *** Script: ***lastname:: Bush
    *** Script: **0:: [object Object]
    *** Script: ***id:: 10
    *** Script: ***test:: test1,test3
    *** Script: ****0:: test1
    *** Script: ****1:: test3
    *** Script: ***firstname:: Tom
    *** Script: ***lastname:: Cruise
    *** Script: **1:: [object Object]
    *** Script: ***id:: 20
    *** Script: ***test:: test6,test5
    *** Script: ****0:: test6
    *** Script: ****1:: test5
    *** Script: ***firstname:: Paul
    *** Script: ***lastname:: Enderson