Les objets dans Apps Script

Dans Apps Script, les objets sont utilisés pour organiser les valeurs de votre programme qui sont liées entre elles.

Par exemple, imaginez que vous créez une application destinée aux enseignants pour marquer la présence des élèves dans une école. Cette application doit stocker et traiter certaines informations pour chaque élève, comme :

  • Leur prénom
  • Leur nom de famille
  • Leur classe
  • Leur section

Au lieu d’utiliser plusieurs variables distinctes, vous pouvez regrouper ces informations dans un objet.

let eleve = {
    prenom : "Manon",
    nom : "Martin",
    section : "A",
    classe : "maternelle"
};

Avec cet objet, il est clair que toutes ces données sont liées et représentent un élève spécifique.

Qu’est-ce qu’un objet ?

Un objet est une valeur qui contient d’autres valeurs appelées propriétés. Chaque propriété est composée d’un nom (la clé) et de sa valeur correspondante, formant un paire clé-valeur.

Voici une représentation simple :

let eleve = {
    prenom : "Manon",
    nom : "Martin",
    classe : "maternelle"
};

Créer un objet dans Apps Script

Vous pouvez créer un objet vide avec des accolades ({}) :

let eleve = {};
Logger.log(eleve); // {}

Ensuite, vous pouvez définir ses propriétés et leurs valeurs à l’aide de la notation par points :

let eleve = {};
eleve.prenom = "Jean";
eleve.nom = "Lorbin";
eleve.age = 4;
Logger.log(eleve); // {prenom=Jane, nom=Lee, age=4.0}

Accéder et supprimer des propriétés

Vous pouvez accéder aux valeurs d’un objet en utilisant la notation par points :

Logger.log(eleve.prenom); // Jean
Logger.log(eleve.nom); // Lorbin
Logger.log(eleve.age); // 4.0

Pour supprimer une propriété et sa valeur associée, utilisez l’opérateur delete :

delete eleve.age;
Logger.log(eleve.age); // undefined

Définir plusieurs propriétés à la fois

Vous pouvez définir plusieurs propriétés lors de la création de l’objet :

let eleve = {
    prenom : "Manon",
    nom : "Martin",
    section : "A",
    classe : "maternelle"
};

Note : Utilisez un deux-points (:) pour séparer une propriété de sa valeur, et une virgule (,) après chaque paire clé-valeur, sauf pour la dernière.

Notation par crochets

Vous pouvez également accéder à une propriété à l’aide de la notation par crochets :

eleve["prenom"]; // "Manon"

Les deux notations suivantes sont équivalentes :

eleve.prenom; // Notation par points
eleve["prenom"]; // Notation par crochets

Méthodes

Si la valeur associée à une propriété est une fonction, la propriété devient une méthode.

let eleve = {};
eleve.prenom = "Jean";
eleve.nom = "Lorbin";
eleve.age = 4;
eleve.getInfoParent = function() {
    return "Informations sur les parents.";
};
Logger.log(eleve);

Vous pouvez accéder au code de la méthode ou l’exécuter :

eleve.getInfoParent; // Retourne le code de la fonction
eleve.getInfoParent(); // Exécute la fonction et retourne sa valeur

Vérifier si une propriété existe

Utilisez l’opérateur in pour vérifier si une propriété existe dans un objet :

let eleve = {
    prenom : "Manon",
    nom : "Martin",
    section : "A",
    classe : "maternelle"
};

Logger.log("prenom" in eleve); // true
Logger.log("age" in eleve); // false

Après avoir ajouté une nouvelle propriété :

eleve.age = 4;
Logger.log("age" in eleve); // true

La suite du cours Apps Script avec l’article : Les tableaux (Arrays) dans Apps Script