Введение в Google Apps Script
Опубликовано 22 December 2023
Содержание
время чтения: 30 мин
-
Операции и операторы в Google Apps Script
-
Объекты в Google Apps Script
-
Настройки и области видимости в Google Apps Script
-
Коллекции и декларативное программирование в Google Apps Script
Введение
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.