JSUtil : Global

  • Freigeben Version: Xanadu
  • Aktualisiert 1. August 2024
  • 7 Minuten Lesedauer
  • Die JSUtil-Skripteinbindung bietet Verknüpfungen für gängige JavaScript-Routinen.

    Diese API ist in globalen serverseitigen Skripts verfügbar, nicht in bereichsbezogenen Skripts.

    JSUtil – doesNotHave(Object item)

    Überprüft, ob das Element NULL ist oder undefiniert.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    item Objekt Das zu prüfende Objekt
    Tabelle : 2. Ergebnisse
    Typ Beschreibung
    Boolean „True“, wenn das angegebene Objekt NULL oder undefiniert ist.
    var x = "the quick brown fox";
    var y = "";
    var z;
     
    gs.print("x = '" + x + "', JSUtil.doesNotHave(x) = " + JSUtil.doesNotHave(x));
    gs.print("y = '" + y + "', JSUtil.doesNotHave(y) = " + JSUtil.doesNotHave(y));
    gs.print("z = '" + z + "', JSUtil.doesNotHave(z) = " + JSUtil.doesNotHave(z))
    Ausgabe:
    x = 'the quick brown fox', JSUtil.doesNotHave(x) = false
    y = '', JSUtil.doesNotHave(y) = false
    z = 'undefined', JSUtil.doesNotHave(z) = true

    JSUtil – escapeAttr(String text)

    Escape-Ampersands, die häufig zur Definition von URL-Attributen verwendet werden.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    text Zeichenfolge Der Text
    Tabelle : 4. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Der Text mir ordnungsgemäß mit Excape-Zeichen versehenen Ampersands.
    var attr = "sysparm_query=active=true&sysparm_view=special";
     
    gs.print(JSUtil.escapeAttr(attr));
    Ausgabe: Dies ist der zurückgegebene Text. Wenn der Text in der Anwendung angezeigt wird, rendert die Seite das Escape-Zeichen mit einem einzelnen Und-Zeichen.
    sysparm_query=active=true&sysparm_view=special

    JSUtil – escapeText(String text)

    Versieht ungültige XML-Zeichen mit Escape-Zeichen, wie z. B. „< > &“.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    text Zeichenfolge Der Text
    Tabelle : 6. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Der Text mit zusätzlichen Escape-Zeichen.
    var html = "<b>This is my title</b>";
     
    gs.print(JSUtil.escapeText(html));
    Ausgabe: Dies ist der zurückgegebene Wert. Wenn das Ergebnis in der Anwendung angezeigt wird, rendert die Seite die Klammern, sodass sie als nicht mit Escape-Zeichen versehen angezeigt werden.
    <b>This is my title</b>

    JSUtil – getBooleanValue (GlideRecord now_GR, Zeichenfolgenfeld)

    Gibt den Wert in einem boolean GlideRecord-Feld zurück.

    Tabelle : 7. Parameter
    Name Typ Beschreibung
    now_GR GlideRecord Ein GlideRecord
    field Zeichenfolge Das Feld, aus dem der boolean Wert abgerufen werden soll.
    Tabelle : 8. Ergebnisse
    Typ Beschreibung
    Boolean Gibt den Wert in einem boolean GlideRecord-Feld zurück; gibt „true“ zurück, wenn der Wert des Felds true, „true“, 1 oder „1“ ist.
    var inc = new GlideRecord("incident");
    //get an active incident
    inc.addActiveQuery();
    inc.setLimit(1);
    inc.query();
    inc.next();
     
    gs.print(JSUtil.getBooleanValue(inc, "active"));

    Ausgabe: true

    JSUtil – has(Object item)

    Überprüft, ob das Element nicht NULL und nicht undefiniert ist.

    Tabelle : 9. Parameter
    Name Typ Beschreibung
    item Objekt Das zu prüfende Objekt
    Tabelle : 10. Ergebnisse
    Typ Beschreibung
    Boolean „True“, wenn das angegebene Objekt nicht NULL und nicht undefiniert ist.
    var x = "the quick brown fox";
    var y = "";
    var z;
     
    gs.print("x = '" + x + "', JSUtil.has(x) = " + JSUtil.has(x));
    gs.print("y = '" + y + "', JSUtil.has(y) = " + JSUtil.has(y));
    gs.print("z = '" + z + "', JSUtil.has(z) = " + JSUtil.has(z));
    Ausgabe:
    x = 'the quick brown fox', JSUtil.has(x) = true
    y = '', JSUtil.has(y) = true
    z = 'undefined', JSUtil.has(z) = false

    JSUtil – instance_of(Object item, String class)

    Überprüft, ob das angegebene Objekt Mitglied der angegebenen Klasse ist.

    Bei JavaScript-Objekten verhält sich diese Methode genau wie der JavaScript-Operator „instanceof“, unterstützt jedoch auch Java-Objekte.

    Tabelle : 11. Parameter
    Name Typ Beschreibung
    item Objekt Das zu prüfende Objekt
    class Zeichenfolge Die zu überprüfende Klasse
    Tabelle : 12. Ergebnisse
    Typ Beschreibung
    Boolean „True“, wenn das angegebene Objekt Mitglied der angegebenen Klasse ist.
    var a = ['a','b','c'];
    var b = 10;
    var c = new GlideRecord("incident");
     
    gs.print("JSUtil.instance_of(a,'Array') = " + JSUtil.instance_of(a,Array));
    gs.print("JSUtil.instance_of(a,'String') = " + JSUtil.instance_of(a,String));
     
    gs.print("JSUtil.instance_of(b,'String') = " + JSUtil.instance_of(b,String));
     
    gs.print("JSUtil.instance_of(c,'GlideRecord') = " + JSUtil.instance_of(c,GlideRecord));
    Ausgabe:
    JSUtil.instance_of(a,'Array') = true
    JSUtil.instance_of(a,'String') = false
    JSUtil.instance_of(b,'String') = false
    JSUtil.instance_of(c,'GlideRecord') = true

    JSUtil – isJavaObject(Object value)

    Überprüft, ob das angegebene Objekt eine Java-Klasse ist.

    Tabelle : 13. Parameter
    Name Typ Beschreibung
    Wert Objekt Das zu prüfende Objekt
    Tabelle : 14. Ergebnisse
    Typ Beschreibung
    Boolean „True“, wenn das angegebene Objekt eine Instanz einer Java-Klasse ist.
    var tu = new TableUtils("incident");
    var classes = tu.getHierarchy(); //Java ArrayList
    var tables = ["task, incident"]; //JavaScript Array
     
    gs.print("JSUtil.isJavaObject(classes) = " + JSUtil.isJavaObject(classes));
    gs.print("JSUtil.isJavaObject(tables) = " + JSUtil.isJavaObject(tables));
    Ausgabe:
    JSUtil.isJavaObject(classes) = true
    JSUtil.isJavaObject(tables) = false

    JSUtil – logObject(Object obj, String name)

    Protokolliert alle Eigenschaften des angegebenen Objekts: Name, Typ und Wert.

    Die Ausgabe wird in die Konsole geschrieben, wenn Sie ein Hintergrundskript ausführen oder die Debugprotokollierung aktiviert ist. Die Ausgabe wird auch in das Systemprotokoll geschrieben.

    Tabelle : 15. Parameter
    Name Typ Beschreibung
    obj Objekt Das Objekt, für das Eigenschaften aufgezählt werden sollen
    Name Zeichenfolge Optionaler Name für das protokollierte Objekt
    Tabelle : 16. Ergebnisse
    Typ Beschreibung
    void
    var arr = ["a","b","c"];
     
    var inc = new GlideRecord("incident");
    //get an active incident
    inc.addActiveQuery();
    inc.setLimit(1);
    inc.query();
    inc.next();
     
    JSUtil.logObject(arr, "arr");
    JSUtil.logObject(inc, "inc");
    Ausgabe:
    Log Object: arr
      Array of 3 elements
        [0]: string = a
        [1]: string = b
        [2]: string = c
    Log Object: inc
      GlideRecord('incident') @ INC0000002

    JSUtil – nil(Object item)

    Überprüft, ob das Element NULL oder undefiniert ist oder die leere Zeichenfolge ergibt.

    Tabelle : 17. Parameter
    Name Typ Beschreibung
    item Objekt Das zu prüfende Objekt
    Tabelle : 18. Ergebnisse
    Typ Beschreibung
    Boolean „True“, wenn das Element NULL oder undefiniert ist oder als leere Zeichenfolge ausgewertet wird.
    var x = "the quick brown fox";
    var y = "";
    var z;
     
    gs.print("x = '" + x + "', JSUtil.nil(x) = " + JSUtil.nil(x));
    gs.print("y = '" + y + "', JSUtil.nil(y) = " + JSUtil.nil(y));
    gs.print("z = '" + z + "', JSUtil.nil(z) = " + JSUtil.nil(z));
    Ausgabe:
    x = 'the quick brown fox', JSUtil.nil(x) = false
    y = '', JSUtil.nil(y) = true
    z = 'undefined', JSUtil.nil(z) = true

    JSUtil – notNil(Object item)

    Überprüft, ob ein Element NULL oder nicht definiert ist oder als leere Zeichenfolge ausgewertet wird.

    Hinweis:
    Diese Methode gibt einen Fehler zurück, wenn das angegebene Objekt nicht deklariert ist.
    Tabelle : 19. Parameter
    Name Typ Beschreibung
    item Objekt Das zu überprüfende Objekt.
    Tabelle : 20. Ergebnisse
    Typ Beschreibung
    Boolean Kennzeichnung, die angibt, ob das Element vorhanden und nicht leer ist. Ein Fehler wird zurückgegeben, wenn das angegebene Objekt nicht deklariert ist.
    Gültige Werte:
    • wahr: Das angegebene Objekt wurde deklariert und definiert. Wenn das Objekt eine Zeichenfolge ist, darf es nicht leer sein.
    • „falsch“: Das angegebene Objekt ist NULL, nicht definiert oder wird als leere Zeichenfolge ausgewertet.

    Das folgende Beispiel zeigt Ergebnisse für eine Zeichenfolgenvariable, eine leere Zeichenfolgenvariable und eine nicht definierte Variable.

    var x = "the quick brown fox";
    var y = "";
    var z;
    
    gs.print("x = '" + x + "', JSUtil.notNil(x) = " + JSUtil.notNil(x));
    gs.print("y = '" + y + "', JSUtil.notNil(y) = " + JSUtil.notNil(y));
    gs.print("z = '" + z + "', JSUtil.notNil(z) = " + JSUtil.notNil(z));
    Ausgabe:
    x = 'the quick brown fox', JSUtil.notNil(x) = true
    y = '', JSUtil.notNil(y) = false
    z = 'undefined', JSUtil.notNil(z) = false

    JSUtil – toBoolean(Object item)

    Konvertiert das angegebene Objekt in ein Boolean.

    Tabelle : 21. Parameter
    Name Typ Beschreibung
    item Objekt Das zu konvertierende Objekt
    Tabelle : 22. Ergebnisse
    Typ Beschreibung
    Boolean Wenn das angegebene Objekt ein Boolean ist, wird es weitergeleitet. Nicht-Null-Zahlen geben „true“ zurück. Null oder undefinierte Zahlen geben „false“ zurück. Zeichenfolgen geben nur dann „true“ zurück, wenn sie genau „true“ sind.
    var zero = 0;
    var one = 1;
    var number = 12;
    var trueBoolean = true;
    var trueString = "true";
    var otherString = "random text";
     
    gs.print("JSUtil.toBoolean(zero) = " + JSUtil.toBoolean(zero));
    gs.print("JSUtil.toBoolean(one) = " + JSUtil.toBoolean(one));
    gs.print("JSUtil.toBoolean(number) = " + JSUtil.toBoolean(number));
    gs.print("JSUtil.toBoolean(trueBoolean) = " + JSUtil.toBoolean(trueBoolean));
    gs.print("JSUtil.toBoolean(trueString) = " + JSUtil.toBoolean(trueString));
    gs.print("JSUtil.toBoolean(otherString) = " + JSUtil.toBoolean(otherString));
    Ausgabe:
    JSUtil.toBoolean(zero) = false
    JSUtil.toBoolean(one) = true
    JSUtil.toBoolean(number) = true
    JSUtil.toBoolean(trueBoolean) = true
    JSUtil.toBoolean(trueString) = true
    JSUtil.toBoolean(otherString) = false

    JSUtil – type_of(Object value)

    Bestimmt den Typ des angegebenen Objekts.

    Tabelle : 23. Parameter
    Name Typ Beschreibung
    Wert Objekt Das zu prüfende Objekt
    Tabelle : 24. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Der Typ des angegebenen Objekts.
    • 'null', wenn der angegebene Wert NULL oder undefiniert ist
    • 'string', wenn der angegebene Wert eine primitive Zeichenfolge oder eine String-Wrapper-Instanz ist
    • 'number', wenn der angegebene Wert eine primitive Zahl oder eine Number-Wrapper-Instanz ist
    • 'boolean', wenn der angegebene Wert eine primitives Boolean oder eine Boolean-Wrapper-Instanz ist
    • 'function' wenn der angegebene Wert eine Funktion ist
    • andernfalls 'object'
    var a = ["a","b","c"];
    var b = 10;
    var c = new GlideRecord("incident");
    var d = true;
    var e;
     
    gs.print("JSUtil.type_of(a) = " + JSUtil.type_of(a));
    gs.print("JSUtil.type_of(b) = " + JSUtil.type_of(b));
    gs.print("JSUtil.type_of(c) = " + JSUtil.type_of(c));
    gs.print("JSUtil.type_of= " + JSUtil.type_of(d));
    gs.print("JSUtil.type_of(e) = " + JSUtil.type_of(e));
    Ausgabe:
    JSUtil.type_of(a) = object
    JSUtil.type_of(b) = number
    JSUtil.type_of(c) = object
    JSUtil.type_of= boolean
    JSUtil.type_of(e) = null

    JSUtil – unescapeAttr(String text)

    Wiederherstellen von Ampersands aus Text mit Escape-Zeichen.

    Tabelle : 25. Parameter
    Name Typ Beschreibung
    text Zeichenfolge Der Text
    Tabelle : 26. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Der Text mit Escape-Zeichen wurde entfernt.
    var attr = "sysparm_query=active=true&sysparm_view=special";
     
    gs.print(JSUtil.unescapeAttr(attr));
    Ausgabe:
    sysparm_query=active=true&sysparm_view=special

    JSUtil – unescapeText(String text)

    Entfernt Escape-Zeichen.

    Tabelle : 27. Parameter
    Name Typ Beschreibung
    text Zeichenfolge Der zu verarbeitende Text.
    Tabelle : 28. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Der Text ohne Escape-Zeichen.
    var html = "<b>This is my title</b>";
     
    gs.print(JSUtil.unescapeText(html));
    Ausgabe: Dies ist der zurückgegebene Wert. Wenn der Text in der Anwendung der Seite angezeigt wird, rendert er die HTML-Tags und zeigt den Text in Fettdruck an.
    <b>This is my title</b>