Введение

Google Apps Script (GAS) — это платформа для разработки скриптов, связанная с различными сервисами Google, такими как Google Таблицы, Google Документы и Google Формы. Она позволяет автоматизировать задачи, добавлять пользовательские функции и интегрировать сервисы Google.

В этом мемо мы рассмотрим основные концепции Google Apps Script, опираясь на конкретные примеры. Мы обсудим такие понятия, как переменные, циклы, функции и многие другие, адаптируя их к конкретному контексту GAS.

Базовая структура в Google Apps Script

Для начала, рассмотрим базовую структуру скрипта Google Apps.

/**
 * Structure de base en Google Apps Script
 */
function exempleStructureGAS() {
    // Votre code ici
    Logger.log("Hello, Google Apps Script!");
}

Типы и переменные в Google Apps Script

Google Apps Script использует JavaScript как язык программирования. Типы данных и переменные работают аналогично стандартному JavaScript.

/**
 * Types et Variables en Google Apps Script
 */
function exempleTypesVariablesGAS() {
    // Votre code ici
    var nombre = 42;
    var texte = "Bonjour, Google Apps Script!";
    Logger.log(nombre);
    Logger.log(texte);
}

Операции и операторы в Google Apps Script

Операции и операторы в Google Apps Script такие же, как в JavaScript.

/**
 * Opérations et Opérateurs en Google Apps Script
 */
function exempleOperationsGAS() {
    // Votre code ici
    var x = 10;
    var y = 5;
    var resultat = x + y;
    Logger.log(resultat);
}

Var, Let и Const в Google Apps Script

В GAS, концепты`var`, let, et `const`используются для объявления переменных. Однако важно понимать их различия и последствия.

/**
 * Var, Let et Const en Google Apps Script
 */
function exempleVarLetConstGAS() {
    // Votre code ici
    // Utilisation de var
    var x = 10;
    if (true) {
        var x = 20; // La variable x est modifiée globalement
    }
    Logger.log(x);

    // Utilisation de let
    let y = 30;
    if (true) {
        let y = 40; // La variable y est limitée au bloc if
    }
    Logger.log(y);

    // Utilisation de const
    const z = 50;
    // z = 60; // Impossible de réassigner une constante
    Logger.log(z);
}

Конструкции управления в Google Apps Script

Конструкции управления такие как`if`, else, while et `for`используются для управления потоком выполнения в Google Apps Script.

/**
 * Structures de Contrôle en Google Apps Script
 */
function exempleStructuresControleGAS() {
    // Votre code ici
    var condition = true;

    if (condition) {
        Logger.log("La condition est vraie.");
    } else {
        Logger.log("La condition est fausse.");
    }

    var compteur = 0;
    while (compteur < 5) {
        Logger.log(compteur);
        compteur++;
    }

    for (var i = 0; i < 3; i++) {
        Logger.log(i);
    }
}

Параметры и Scopes в Google Apps Script

Параметры и области видимости играют важную роль в разработке скриптов в GAS. Поймите, как они работают, чтобы избежать неожиданного поведения.

/**
 * Paramètres et Scopes en Google Apps Script
 */
function exempleParametresScopesGAS(parametre) {
    // Votre code ici
    var variableGlobale = "Je suis global";

    function afficherParametre() {
        Logger.log(parametre);
    }

    afficherParametre();
    Logger.log(variableGlobale);
}

Константы, переменные и буквы в Google Apps Script

Понимать разницу между`const`, var, et `let`Это необходимо для эффективного использования переменных в Google Apps Script.

/**
 * Constantes, Variables, et Lettres en Google Apps Script
 */
function exempleConstantesVariablesLettresGAS() {
    // Votre code ici
    const constante = "Je ne change pas";
    Logger.log(constante);

    var variable = "Je peux changer";
    Logger.log(variable);

    let lettre = "Je peux aussi changer, mais seulement dans mon bloc";
    Logger.log(lettre);
}

Циклы в Google Apps Script

Циклы, такие как`for` et while, являются необходимыми для итерации по элементам и выполнения повторяющихся операций

/**
 * Boucles en Google Apps Script
 */
function exempleBouclesGAS() {
    // Votre code ici
    for (var i = 0; i < 3; i++) {
        Logger.log(i);
    }

    var condition = true;
    var compteur = 0;

    while (condition) {
        Logger.log("Tour de boucle");
        compteur++;
        if (compteur === 3) {
            condition = false;
        }
    }
}

Объекты в Google Apps Script

Объекты используются для структурирования данных. В GAS множество встроенных объектов облегчают взаимодействие с сервисами Google.

/**
 * Objets en Google Apps Script
 */
function exempleObjetsGAS() {
    // Votre code ici
    var feuille = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
    var cellule = feuille.getRange("A1");
    cellule.setValue("Nouvelle valeur");
}

Константы, переменные и буквы в Google Apps Script

Понимать разницу между`const`, var, et `let`Это необходимо для эффективного использования переменных в Google Apps Script.

/**
 * Constantes, Variables, et Lettres en Google Apps Script
 */
function exempleConstantesVariablesLettresGAS() {
    // Votre code ici
    const constante = "Je ne change pas";
    Logger.log(constante);

    var variable = "Je peux changer";
    Logger.log(variable);

    let lettre = "Je peux aussi changer, mais seulement dans mon bloc";
    Logger.log(lettre);
}

Функции в Google Apps Script

Функции являются фундаментальными элементами программирования. В GAS их можно объявлять и вызывать различными способами.

/**
 * Fonctions en Google Apps Script
 */
function exempleFonctionsGAS() {
    // Votre code ici
    function additionner(a, b) {
        return a + b;
    }

    var resultat = additionner(2, 3);
    Logger.log(resultat);

    // Fonction anonyme
    var multiplier = function (x, y) {
        return x * y;
    };

    Logger.log(multiplier(4, 5));
}

Операторы остатка и распространения в Google Apps Script

Операторы отдыха (…​) и распространение (…​) они полезны для манипулирования массивами и объектами кратко.

/**
 * Opérateurs de Repos et de Propagation en Google Apps Script
 */
function exempleOperateursReposPropagationGAS() {
    // Votre code ici
    // Opérateur de repos (...) pour les tableaux
    var nombres = [1, 2, 3, 4, 5];
    var [...copieNombres] = nombres;
    Logger.log(copieNombres);

    // Opérateur de propagation (...) pour les objets
    var objOriginal = { x: 1, y: 2 };
    var objClone = { ...objOriginal, z: 3 };
    Logger.log(objClone);
}

Назначение по разложению в Google Apps Script

Деструктурирующее присваивание — это мощная функция, позволяющая извлекать значения из объектов и массивов в лаконичной форме.

/**
 * Affectation par Décomposition en Google Apps Script
 */
function exempleAffectationDecompositionGAS() {
    // Votre code ici
    var coordonnees = [3, 4];
    var [x, y] = coordonnees;
    Logger.log(x);
    Logger.log(y);

    var utilisateur = { nom: "John", age: 30 };
    var { nom, age } = utilisateur;
    Logger.log(nom);
    Logger.log(age);
}

Коллекции и декларативное программирование в Google Apps Script

Google Apps Script поддерживает структуры данных, такие как массивы, и концепции функционального программирования и декларативной итерации (><императивной), такие как`map`, reduce et forEach.

/**
 * Collections et Programmation Déclarative en Google Apps Script
 */
function exempleCollectionsFonctionnelleGAS() {
    // Votre code ici
    // Exemple de tableau (collection)
    var nombres = [1, 2, 3, 4, 5];

    // Utilisation de forEach
    nombres.forEach(function (nombre) {
        Logger.log(nombre);
    });

    // Utilisation de map
    var carresNombres = nombres.map(function (nombre) {
        return nombre * nombre;
    });
    Logger.log(carresNombres);

    // Utilisation de reduce
    var somme = nombres.reduce(function (acc, nombre) {
        return acc + nombre;
    }, 0);
    Logger.log(somme);
}

Заключение

Эта записка охватила основные концепции Google Apps Script, проиллюстрировав их на конкретных примерах кода. Используйте эти знания, чтобы автоматизировать свои повседневные задачи, персонализировать документы и полностью использовать возможности Google Apps Script.

Похожие статьи