Wbudowane usługi Google

Google Apps Script zapewnia ponad 30 wbudowanych usług umożliwiających interakcję danych użytkowników, innych systemach Google i systemach zewnętrznych. Te usługi są są udostępniane jako obiekty globalne, podobne do standardu JavaScriptu Math obiektu. Na przykład Math oferuje metody, takie jak random() czy takie jak PI, Usługa arkuszy kalkulacyjnych umożliwia: openById(id), klas (obiektów podrzędnych), takich jak Range oraz wyliczenia takie jak DataValidationCriteria.

Dokumentacja referencyjna dotycząca usług, które kontrolują Google Workspace produkty są zbierane w „Google Workspace Usługi” pod „Źródła wiedzy” na pasku bocznym witryny. Usługi użyteczności publicznej np. tworzenie interfejsów użytkownika, analizowanie kodu XML czy zapisywanie danych w dziennikach) w „Usługach skryptów”, .

Nowoczesne funkcje JavaScript

Apps Script obsługuje 2 środowiska wykonawcze JavaScript: środowisko wykonawcze V8 oraz starsze oparte na technologii Mozilla Interpreter JavaScriptu Rhino.

Środowisko wykonawcze V8 obsługuje nowoczesne Składnia i funkcje ECMAScript. Środowisko wykonawcze Rhino jest oparte na starszej wersji JavaScript 1.6 oraz kilka funkcji 1,7 i 1.8. Możesz dowolnie wybrać środowisko wykonawcze do użycia ze skryptem, ale zdecydowanie zalecamy środowisko wykonawcze V8.

Każde środowisko wykonawcze obsługuje klasy i obiekty JavaScript, które są dostępne dla skrypt oprócz wbudowanego i zaawansowanych usług Google. Twoje skrypty mogą używać typowych obiektów, takich jak Array Date, RegExp, i tak dalej. oraz Math i Object obiektów globalnych.

Korzystanie z autouzupełniania

Edytor skryptów zapewnia „pomoc w zakresie treści” cechę, nazywaną częściej „autouzupełnianie”, które ujawnia obiekty globalne, a także metody i wyliczenia. które są prawidłowe w bieżącym kontekście skryptu. Pojawiają się sugestie autouzupełniania automatycznie za każdym razem, gdy wpiszesz kropkę po obiekcie globalnym, wyliczeniu lub metodzie , które zwraca klasę Apps Script. Na przykład:

  • Jeśli wpiszesz pełną nazwę obiektu globalnego lub wybierzesz obiekt z autouzupełniania, a następnie wpisz . (kropka), wyświetlą się wszystkie metody i wyliczenia dla danej klasy.
  • Jeśli wpiszesz kilka znaków, zostaną wyświetlone wszystkie prawidłowe podpowiedzi rozpoczynające się od tych znaków.

Informacje o obiektach globalnych

Każda usługa udostępnia co najmniej 1 obiekt globalny (najwyższego poziomu). np. usługa Gmail jest dostępna wyłącznie z obiekt GmailApp. Niektóre usługi dostarczania wielu obiektów globalnych; Na przykład Usługa podstawowa zawiera 4 obiekty globalne: Browser, Logger, MimeType i Session.

Metody nawiązywania połączeń

Globalne obiekty niemal wszystkich wbudowanych usługi zaawansowane obejmują metody, które zwraca dane lub klasę Apps Script. Skrypty wywołują metody w takim formacie:

GlobalObjectName.methodName(argument1, argument2, ..., argumentN);

Skrypt może na przykład wysłać e-maila, wywołując metodę sendEmail(recipient, subject, body) jak niżej w usłudze Gmail:

GmailApp.sendEmail('claire@example.com', 'Subject line', 'This is the body.');

Jeśli metoda zwraca inną klasę Apps Script, można połączyć w niej wywołania metod w łańcuchu . (Typy zwracane są wyświetlane zarówno w autouzupełnianiu, jak i w odwołaniach do metody) documentation.) Na przykład metoda DocumentApp.create() zwraca Document; w ten sposób następujące 2 sekcje kodu są równoważne:

var doc = DocumentApp.create('New document');
var body = doc.getBody();
body.appendParagraph('New paragraph.');

// Same result as above.
DocumentApp.create('New document').getBody().appendParagraph('New paragraph.');

Dostęp do zajęć podrzędnych

Każda usługa zawiera co najmniej 1 klasę podrzędną, do której nie można uzyskać dostępu jak obiekt globalny. Nie można użyć słowa kluczowego new do: tworzenia tych klas tak samo jak przy użyciu standardowych klas JavaScriptu, Date; możesz uzyskać dostęp do klasy podrzędnej tylko przez wywołanie metody, która ją zwraca. Jeśli nie wiesz, jak uzyskać dostęp do określonych zajęć, otwórz stronę główną danej usługi znajdziesz w dokumentacji i wyszukaj metodę, która zwraca odpowiednią klasę.

Obsługa interfejsów

Niektóre usługi obejmują specjalne klasy oznaczone jako „interfejsy”. w dokumentacji referencyjnej. To są klasy ogólne używane jako typy zwracanych w przypadku metod, które nie mogą z wyprzedzeniem określić dokładnego typu; np. metoda Usługa dokumentów Body.getChild(childIndex). zwraca ogólny obiekt Element. Element to interfejs, który reprezentuje inną klasę, ewentualną Paragraph lub Table Obiekty interfejsu są rzadko są przydatne; zwykle lepiej wywoływać metodę taką jak Element.asParagraph() do rzutowania obiektu z powrotem na dokładną klasę.

Praca z wyliczeniami

Większość usług zawiera kilka wyliczeń (typów) nazwanych wartości. Dla: na przykład w usłudze Dysk używane są wyliczenia Access i Permission, aby określić, którzy użytkownicy mają dostęp do pliku lub folderu. Dostęp do tych wyliczeń jest dostępny prawie we wszystkich przypadkach z obiektu globalnego. Na przykład wywołanie metody Folder.setSharing(accessType, permissionType) wygląda tak:

// Creates a folder that anyone on the Internet can read from and write to. (Domain administrators can
// prohibit this setting for Google Workspace users.)
var folder = DriveApp.createFolder('Shared Folder');
folder.setSharing(DriveApp.Access.ANYONE, DriveApp.Permission.EDIT);