JSUtil : global

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 7 minutes de lecture
  • L’include de script JSUtil fournit des raccourcis pour les routines JavaScript courantes.

    Cette API est disponible dans des scripts globaux côté serveur, et non dans des scripts inclus dans le périmètre.

    JSUtil : doesNotHave(Objet élément)

    Vérifie si l’élément est nul ou s’il n’est pas défini.

    Tableau 1. Paramètres
    Nom Type Description
    élément Objet Objet à vérifier
    Tableau 2. Renvoie
    Type Description
    Booléen Vrai si l’objet spécifié est nul ou non défini.
    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))
    Sortie :
    x = 'the quick brown fox', JSUtil.doesNotHave(x) = false
    y = '', JSUtil.doesNotHave(y) = false
    z = 'undefined', JSUtil.doesNotHave(z) = true

    JSUtil : escapeAttr(texte de chaîne)

    Esperluettes d’échappement couramment utilisées pour définir les attributs d’URL.

    Tableau 3. Paramètres
    Nom Type Description
    Texte Chaîne Le texte
    Tableau 4. Renvoie
    Type Description
    Chaîne Le texte avec des esperluettes s’échappait correctement.
    var attr = "sysparm_query=active=true&sysparm_view=special";
     
    gs.print(JSUtil.escapeAttr(attr));
    Sortie : il s’agit du texte retourné. Si le texte est affiché dans l’application, la page affichera l’esperluette d’échappement avec une seule esperluette.
    sysparm_query=active=true&sysparm_view=special

    JSUtil : escapeText(texte de chaîne)

    Échappe les caractères XML non valides tels que « < > & ».

    Tableau 5. Paramètres
    Nom Type Description
    Texte Chaîne Le texte
    Tableau 6. Renvoie
    Type Description
    Chaîne Texte avec caractères d’échappement ajoutés.
    var html = "<b>This is my title</b>";
     
    gs.print(JSUtil.escapeText(html));
    Sortie : il s’agit de la valeur renvoyée. Si le résultat est affiché dans l’application, la page renvoie les crochets afin qu’il semble qu’il ne s’échappe pas.
    <b>This is my title</b>

    JSUtil : getBooleanValue(GlideRecord now_GR, champ de chaîne)

    Renvoie la valeur dans un champ booléen GlideRecord.

    Tableau 7. Paramètres
    Nom Type Description
    now_GR GlideRecord Un GlideRecord
    champ Chaîne Champ à partir duquel récupérer la valeur booléenne.
    Tableau 8. Renvoie
    Type Description
    Booléen Renvoie la valeur d’un champ booléen GlideRecord, renvoie la valeur true si la valeur du champ est vrai, « vrai », 1 ou « 1 ».
    var inc = new GlideRecord("incident");
    //get an active incident
    inc.addActiveQuery();
    inc.setLimit(1);
    inc.query();
    inc.next();
     
    gs.print(JSUtil.getBooleanValue(inc, "active"));

    Sortie : vrai

    JSUtil : a (élément d’objet)

    Vérifie si l’élément n’est pas nul et n’est pas non défini.

    Tableau 9. Paramètres
    Nom Type Description
    élément Objet Objet à vérifier
    Tableau 10. Renvoie
    Type Description
    Booléen Vrai si l’objet spécifié n’est pas nul et n’est pas non défini.
    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));
    Sortie :
    x = 'the quick brown fox', JSUtil.has(x) = true
    y = '', JSUtil.has(y) = true
    z = 'undefined', JSUtil.has(z) = false

    JSUtil : instance_of(objet item, classe de chaîne)

    Vérifie si l’objet spécifié est membre de la classe spécifiée.

    Pour les objets JavaScript, cette méthode se comporte exactement comme l’opérateur JavaScript « instanceof », mais prend également en charge les objets Java.

    Tableau 11. Paramètres
    Nom Type Description
    élément Objet Objet à vérifier
    classe Chaîne La classe à vérifier
    Tableau 12. Renvoie
    Type Description
    Booléen Vrai si l’objet spécifié est membre de la classe spécifiée.
    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));
    Sortie :
    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(valeur d’objet)

    Vérifie si l’objet spécifié est une classe Java.

    Tableau 13. Paramètres
    Nom Type Description
    valide Objet Objet à vérifier
    Tableau 14. Renvoie
    Type Description
    Booléen Vrai si l’objet spécifié est une instance d’une classe Java.
    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));
    Sortie :
    JSUtil.isJavaObject(classes) = true
    JSUtil.isJavaObject(tables) = false

    JSUtil : logObject(Object obj, nom de chaîne)

    Consigne toutes les propriétés dans l’objet donné : nom, type et valeur.

    La sortie est écrite dans la console si vous exécutez à partir d’un script en arrière-plan ou si la journalisation de débogage est activée. La sortie est également écrite dans le journal système.

    Tableau 15. Paramètres
    Nom Type Description
    obj. Objet Objet pour lequel il faut énumérer des propriétés
    nom Chaîne Nom facultatif pour l’objet journalisé
    Tableau 16. Renvoie
    Type Description
    nul
    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");
    Sortie :
    Log Object: arr
      Array of 3 elements
        [0]: string = a
        [1]: string = b
        [2]: string = c
    Log Object: inc
      GlideRecord('incident') @ INC0000002

    JSUtil : nul (élément d’objet)

    Vérifie si l’élément est nul, non défini ou équivaut à une chaîne vide.

    Tableau 17. Paramètres
    Nom Type Description
    élément Objet Objet à vérifier
    Tableau 18. Renvoie
    Type Description
    Booléen Vrai si l’élément est nul, indéfini ou équivaut à une chaîne vide.
    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));
    Sortie :
    x = 'the quick brown fox', JSUtil.nil(x) = false
    y = '', JSUtil.nil(y) = true
    z = 'undefined', JSUtil.nil(z) = true

    JSUtil : notNil(Objet élément)

    Vérifie si un élément est nul, non défini ou évalue une chaîne vide.

    Remarque :
    Cette méthode renvoie une erreur si l’objet fourni n’est pas déclaré.
    Tableau 19. Paramètres
    Nom Type Description
    élément Objet L’objet à vérifier.
    Tableau 20. Renvoie
    Type Description
    Booléen Marqueur indiquant si l’élément existe et s’il n’est pas vide. Une erreur est renvoyée si l’objet fourni n’est pas déclaré.
    Valeurs valides :
    • vrai : l’objet fourni a été déclaré et défini. Si l’objet est une chaîne, il n’est pas vide.
    • false : l’objet fourni est nul, non défini ou équivaut à une chaîne vide.

    L’exemple suivant montre les résultats pour une variable de chaîne, une variable de chaîne vide et une variable non définie.

    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));
    Sortie :
    x = 'the quick brown fox', JSUtil.notNil(x) = true
    y = '', JSUtil.notNil(y) = false
    z = 'undefined', JSUtil.notNil(z) = false

    JSUtil : toBoolean(Objet élément)

    Convertit l’objet spécifié en booléen.

    Tableau 21. Paramètres
    Nom Type Description
    élément Objet Objet à convertir
    Tableau 22. Renvoie
    Type Description
    Booléen Si l’objet spécifié est un booléen, il est transmis. Les nombres non nuls renvoient la valeur vrai. Nul ou undefined renvoie la valeur faux. Les chaînes renvoient la valeur vrai uniquement si elles sont exactement égales à « vrai ».
    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));
    Sortie :
    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(valeur d’objet)

    Détermine le type de l’objet spécifié.

    Tableau 23. Paramètres
    Nom Type Description
    valide Objet Objet à vérifier
    Tableau 24. Renvoie
    Type Description
    Chaîne Type de l’objet spécifié.
    • « nul » si la valeur donnée est nulle ou indéfinie
    • « chaîne » si la valeur donnée est une chaîne primitive ou une instance de couche de chaîne
    • « number » si la valeur donnée est un nombre primitif ou une instance de couche de numéro
    • « booléen » si la valeur donnée est une instance booléenne primitive ou booléenne
    • « fonction » si la valeur indiquée est une fonction
    • 'objet' sinon
    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));
    Sortie :
    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(texte de chaîne)

    Restaurer les esperluettes du texte échappé.

    Tableau 25. Paramètres
    Nom Type Description
    Texte Chaîne Le texte
    Tableau 26. Renvoie
    Type Description
    Chaîne Le texte avec les caractères d’échappement a été supprimé.
    var attr = "sysparm_query=active=true&sysparm_view=special";
     
    gs.print(JSUtil.unescapeAttr(attr));
    Sortie :
    sysparm_query=active=true&sysparm_view=special

    JSUtil : unescapeText(texte de chaîne)

    Supprime les caractères d’échappement.

    Tableau 27. Paramètres
    Nom Type Description
    Texte Chaîne Le texte à traiter.
    Tableau 28. Renvoie
    Type Description
    Chaîne Le texte sans caractères d’échappement.
    var html = "<b>This is my title</b>";
     
    gs.print(JSUtil.unescapeText(html));
    Sortie : il s’agit de la valeur renvoyée. Si le texte est affiché dans la page de l’application, il affiche les balises html et le texte en gras.
    <b>This is my title</b>