Wbudowane usługi Google

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Google Apps Script zapewnia ponad 30 wbudowanych usług do interakcji z danymi użytkowników, innymi systemami Google oraz systemami zewnętrznymi. Te usługi są uznawane za obiekty globalne podobne do standardowego obiektu Math JavaScriptu. Na przykład Math oferuje takie metody jak random() i stałe, takie jak PI, Apps Script, takie jak openById(id), klasy (obiekty podrzędne) takie jak Range oraz wyliczenia, takie jak DataValidationCriteria.

Dokumentacja referencyjna dotycząca usług, które kontrolująGoogle Workspace produkty, są zbierane w sekcji „"Google Workspace Usługi&quot” w nagłówku „"Reference"” na pasku bocznym tej witryny. Usługi użytkowe (np. tworzenie interfejsów, analizowanie plików XML czy zapisywanie danych w dzienniku) są zbierane w sekcji &Usługi skryptów&quot.

Nowoczesne funkcje JavaScript

Skrypt Apps Script działa w 2 środowiskach wykonawczych JavaScript: nowoczesnego V8 i starszym opartym na edytorze JavaScript w Rhino.

Środowisko wykonawcze V8 obsługuje nowoczesną składnię i funkcje ECMAScript. Środowisko wykonawcze Rhino korzysta ze starszego standardu JavaScript 1.6 oraz kilku funkcji z wersji 1.7 i 1.8. Możesz swobodnie wybrać środowisko wykonawcze, którego chcesz używać ze skryptem, ale zdecydowanie zalecamy korzystanie z środowiska wykonawczego V8.

Każde środowisko wykonawcze obsługuje klasy i obiekty JavaScript, które są dostępne dla skryptu oprócz wbudowanych i zaawansowanych usług Google. Skrypty mogą korzystać z popularnych obiektów, takich jak Array, Date, RegExp oraz obiektów globalnych Math i Object.

Korzystanie z autouzupełniania

Edytor & funkcji wspomagania treści jest powszechnie określany jako „"autocomplete&&quot”. Dzięki temu można zobaczyć obiekty globalne, metody i wartości, które są prawidłowe w bieżącym kontekście skryptu. Sugestie autouzupełniania pojawiają się automatycznie za każdym razem, gdy wpiszesz kropkę po globalnym obiekcie, wyliczeniu lub metodzie, która zwraca klasę Apps Script. Przykład:

  • Jeśli wpiszesz pełną nazwę obiektu globalnego lub wybierzesz jeden z tych elementów, a potem wpiszesz . (kropka), zobaczysz wszystkie metody i wyliczenia dotyczące tej klasy.
  • Jeśli wpiszesz kilka znaków, zobaczysz wszystkie prawidłowe sugestie, które zaczynają się od tych znaków.

Informacje o obiektach globalnych

Każda usługa udostępnia co najmniej 1 obiekt globalny (najwyższy poziom), na przykład usługa Gmail jest dostępna tylko z obiektu GmailApp. Niektóre usługi udostępniają wiele obiektów globalnych, na przykład usługa podstawowa obejmuje 4 obiekty globalne: Browser, Logger, MimeType i Session.

Metody połączeń

Obiekty globalne prawie wszystkich wbudowanych lub usług zaawansowanych obejmują metody zwracania danych lub klasy Apps Script. Skrypty wywołują metody w tym formacie:

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

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

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

Jeśli metoda zwraca inną klasę Apps Script, możesz utworzyć łańcuch wywołań metody w jednym wierszu. Typy zwrotów wyświetlają się zarówno w autouzupełnianiu, jak i w dokumentacji referencyjnej. Na przykład metoda DocumentApp.create() zwraca Document, więc te 2 sekcje 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.');

Uzyskiwanie dostępu do zajęć podrzędnych

Każda usługa zawiera co najmniej 1 klasę podrzędną, do której nie można uzyskać dostępu z najwyższego poziomu jako obiektu globalnego. Nie możesz tworzyć tych klas za pomocą słowa kluczowego new, tak jak w przypadku standardowych klas JavaScriptu takich jak Date. Aby uzyskać dostęp do klasy podrzędnej, musisz wywołać metodę, która je zwraca. Jeśli nie masz dostępu do określonych zajęć, otwórz stronę główną dokumentacji referencyjnej usługi i znajdź metodę, która zwraca odpowiednią klasę.

Radzenie sobie z interfejsami

Jest tu także kilka klas specjalnych oznaczonych w dokumentacji referencyjnej jako „"interfaces&quot”. Są to klasy ogólne używane jako typy zwrotów dla metod, które nie mogą wcześniej określić dokładnego typu. Na przykład metoda serwisów dokumentów Body.getChild(childIndex) zwraca ogólny obiekt Element. Element to interfejs reprezentujący inną klasę, prawdopodobnie Paragraph lub Table. Obiekty interfejsu rzadko są przydatne – w takich przypadkach trzeba zazwyczaj wywołać metodę Element.asParagraph(), by przesłać obiekt z powrotem do określonej klasy.

Praca z wartościami wyliczeniowymi

Większość usług zawiera kilka wartości wyliczeniowych (wymienione typy). Na przykład usługa Dysk używa wartości wyliczeniowych Access i Permission, aby określić, którzy użytkownicy mają dostęp do pliku lub folderu. W większości przypadków masz dostęp do tych wyliczeń 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);