JSUtil – Global
Die JSUtil- API 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.
| Name | Typ | Beschreibung |
|---|---|---|
| item | Objekt | Das zu prüfende Objekt |
| 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))
x = 'the quick brown fox', JSUtil.doesNotHave(x) = false
y = '', JSUtil.doesNotHave(y) = false
z = 'undefined', JSUtil.doesNotHave(z) = trueJSUtil – escapeAttr(String text)
Escape-Ampersands, die häufig zur Definition von URL-Attributen verwendet werden.
| Name | Typ | Beschreibung |
|---|---|---|
| text | Zeichenfolge | Der Text |
| 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));
sysparm_query=active=true&sysparm_view=specialJSUtil – escapeText(String text)
Versieht ungültige XML-Zeichen mit Escape-Zeichen, wie z. B. „< > &“.
| Name | Typ | Beschreibung |
|---|---|---|
| text | Zeichenfolge | Der Text |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Der Text mit zusätzlichen Escape-Zeichen. |
var html = "<b>This is my title</b>";
gs.print(JSUtil.escapeText(html));
<b>This is my title</b>JSUtil – getBooleanValue(GlideRecord now_GR, String field)
Gibt den Wert in einem boolean GlideRecord-Feld zurück.
| Name | Typ | Beschreibung |
|---|---|---|
| now_GR | GlideRecord | Ein GlideRecord |
| field | Zeichenfolge | Das Feld, aus dem der boolean Wert abgerufen werden soll. |
| 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.
| Name | Typ | Beschreibung |
|---|---|---|
| item | Objekt | Das zu prüfende Objekt |
| 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));
x = 'the quick brown fox', JSUtil.has(x) = true
y = '', JSUtil.has(y) = true
z = 'undefined', JSUtil.has(z) = falseJSUtil – 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.
| Name | Typ | Beschreibung |
|---|---|---|
| item | Objekt | Das zu prüfende Objekt |
| class | Zeichenfolge | Die zu überprüfende Klasse |
| 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));
JSUtil.instance_of(a,'Array') = true
JSUtil.instance_of(a,'String') = false
JSUtil.instance_of(b,'String') = false
JSUtil.instance_of(c,'GlideRecord') = trueJSUtil – isJavaObject(Object value)
Überprüft, ob das angegebene Objekt eine Java-Klasse ist.
| Name | Typ | Beschreibung |
|---|---|---|
| Wert | Objekt | Das zu prüfende Objekt |
| 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));
JSUtil.isJavaObject(classes) = true
JSUtil.isJavaObject(tables) = falseJSUtil – 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.
| Name | Typ | Beschreibung |
|---|---|---|
| obj | Objekt | Das Objekt, für das Eigenschaften aufgezählt werden sollen |
| Name | Zeichenfolge | Optionaler Name für das protokollierte Objekt |
| 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");
Log Object: arr
Array of 3 elements
[0]: string = a
[1]: string = b
[2]: string = c
Log Object: inc
GlideRecord('incident') @ INC0000002JSUtil – nil(Object item)
Überprüft, ob das Element NULL oder undefiniert ist oder die leere Zeichenfolge ergibt.
| Name | Typ | Beschreibung |
|---|---|---|
| item | Objekt | Das zu prüfende Objekt |
| 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));
x = 'the quick brown fox', JSUtil.nil(x) = false
y = '', JSUtil.nil(y) = true
z = 'undefined', JSUtil.nil(z) = trueJSUtil – notNil(Object item)
Überprüft, ob ein Element NULL oder undefiniert ist oder die leere Zeichenfolge ergibt.
| Name | Typ | Beschreibung |
|---|---|---|
| item | Objekt | Das zu überprüfende Objekt. |
| 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 wurde. Gültige Werte:
|
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));
x = 'the quick brown fox', JSUtil.notNil(x) = true
y = '', JSUtil.notNil(y) = false
z = 'undefined', JSUtil.notNil(z) = falseJSUtil – toBoolean(Object item)
Konvertiert das angegebene Objekt in ein Boolean.
| Name | Typ | Beschreibung |
|---|---|---|
| item | Objekt | Das zu konvertierende Objekt |
| 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));
JSUtil.toBoolean(zero) = false
JSUtil.toBoolean(one) = true
JSUtil.toBoolean(number) = true
JSUtil.toBoolean(trueBoolean) = true
JSUtil.toBoolean(trueString) = true
JSUtil.toBoolean(otherString) = falseJSUtil – type_of(Object value)
Bestimmt den Typ des angegebenen Objekts.
| Name | Typ | Beschreibung |
|---|---|---|
| Wert | Objekt | Das zu prüfende Objekt |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Der Typ des angegebenen Objekts.
|
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));
JSUtil.type_of(a) = object
JSUtil.type_of(b) = number
JSUtil.type_of(c) = object
JSUtil.type_of= boolean
JSUtil.type_of(e) = nullJSUtil – unescapeAttr(String text)
Wiederherstellen von Ampersands aus Text mit Escape-Zeichen.
| Name | Typ | Beschreibung |
|---|---|---|
| text | Zeichenfolge | Der Text |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Der Text mit Escape-Zeichen wurde entfernt. |
var attr = "sysparm_query=active=true&sysparm_view=special";
gs.print(JSUtil.unescapeAttr(attr));
sysparm_query=active=true&sysparm_view=specialJSUtil – unescapeText(String text)
Entfernt Escape-Zeichen.
| Name | Typ | Beschreibung |
|---|---|---|
| text | Zeichenfolge | Der zu verarbeitende Text. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Der Text ohne Escape-Zeichen. |
var html = "<b>This is my title</b>";
gs.print(JSUtil.unescapeText(html));
<b>This is my title</b>