기본 제공 Google 서비스

Google Apps Script는 사용자 데이터, 기타 Google 시스템, 외부 시스템 등이 있습니다. 이러한 서비스는 JavaScript의 표준 객체와 유사한 전역 객체로 제공됩니다. Math 객체를 지정합니다. 예를 들어 Mathrandom()PI와 같은 상수, Apps Script의 스프레드시트 서비스에서는 다음과 같은 메서드를 제공합니다. openById(id), 클래스 (하위 객체)와 같은 RangeDataValidationCriteria

제어 기능을 제어하는 서비스에 대한 참조 문서는 Google Workspace 수집되는 제품 수 'Google Workspace 서비스' 섹션 아래에 있는 'Reference(참조)' 헤더를 클릭하세요. 유틸리티 서비스 (사물용 사용자 인터페이스 생성, XML 파싱, 로그 데이터 작성 등)를 자동으로 수집하여 '스크립트 서비스' 섹션으로 이동합니다.

최신 JavaScript 기능

Apps Script는 두 가지 JavaScript 런타임인 최신 V8 런타임 및 Mozilla의 Rhino JavaScript 인터프리터.

V8 런타임은 최신 ECMAScript 구문 및 기능 Rhino 런타임은 JavaScript 1.6 Ad Exchange의 새로운 기능 1.71.8입니다. 원하는 런타임을 자유롭게 선택할 수 있습니다. 를 사용하는 것이 좋지만 V8 런타임을 사용하는 것이 좋습니다.

각 런타임은 런타임 환경에서 사용할 수 있는 JavaScript 클래스와 객체를 기본 제공 스크립트 외에 및 고급 Google 서비스에 대해 알아봅니다. 내 스크립트는 Array님, Date, RegExp, 기타, 와 MathObject 전역 객체입니다

자동 완성 사용

스크립트 편집기는 '콘텐츠 지원' 더 일반적으로 부르는 '자동 완성' 전역 객체는 물론 메서드와 enum을 보여줍니다. 유효한지 확인해야 합니다. 자동 완성 추천 검색어가 표시됨 전역 객체, enum 또는 메서드 뒤에 마침표를 입력할 때마다 자동으로 호출을 실행합니다. 예를 들면 다음과 같습니다.

  • 전역 객체의 전체 이름을 입력하거나 자동 완성에서 하나를 선택하면 그런 다음 . (마침표)를 입력하면 해당 클래스의 모든 메서드와 enum이 표시됩니다.
  • 몇 자를 입력하면 유효한 URL이 모두 시작하는 것이 좋습니다.

전역 객체 이해

각 서비스는 하나 이상의 전역 (최상위 수준) 객체를 제공합니다. 예를 들어 Gmail 서비스에 액세스하는 경우에만 GmailApp 객체 일부 서비스 여러 전역 객체를 제공합니다. 예를 들어 Base Service에는 4개의 전역 객체가 포함됩니다. Browser님, Logger, MimeTypeSession

호출 메서드

거의 모든 내장 또는 고급 서비스에는 또는 Apps Script 클래스를 반환합니다. 스크립트는 다음 형식으로 메서드를 호출합니다.

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

예를 들어 스크립트는 sendEmail(recipient, subject, body) 메서드를 사용할 수 있습니다.

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

메서드가 다른 Apps Script 클래스를 반환하는 경우 하나의 메서드 호출을 연결할 수 있음 행입니다. 반환 유형은 자동완성과 메서드의 참조 모두에 표시됩니다. documentation.) 예를 들어, DocumentApp.create() Document를 반환합니다. 따라서 다음 두 코드 섹션은 동일합니다.

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.');

하위 클래스 액세스

모든 서비스에는 전역 객체가 할 수 있는 것처럼 최상위 수준을 구성합니다. new 키워드를 사용하여 와 같은 표준 자바스크립트 클래스로 할 수 있듯이 이러한 클래스를 생성할 수 있습니다. Date; 하위 클래스를 반환하는 메서드를 호출해야만 하위 클래스에 액세스할 수 있습니다. 만약 특정 클래스에 액세스하는 방법을 잘 모르는 경우 참조 문서를 살펴보고 원하는 클래스를 반환하는 메서드를 찾아보세요.

인터페이스 처리

일부 서비스에는 "인터페이스"라는 라벨이 지정된 특수 클래스가 포함되어 있습니다. 참조하세요. 반환 유형으로 사용되는 일반 클래스 정확한 유형을 미리 확인할 수 없는 메서드의 경우 예를 들어 문서 서비스 메서드 Body.getChild(childIndex) 일반 Element 객체를 반환합니다. Element는 다른 클래스(예: Paragraph 또는 Table입니다. 인터페이스 객체는 알아내기 위해 대신 일반적으로 다음과 같은 메서드를 호출합니다. Element.asParagraph() 객체를 다시 정확한 클래스로 캐스팅합니다.

enum 작업

대부분의 서비스에는 이름이 지정된 값의 몇 가지 열거형 (열거형)이 포함되어 있습니다. 대상 예를 들어 Drive 서비스는 열거형을 사용합니다. AccessPermission를 사용하여 파일 또는 폴더에 액세스할 수 있어야 합니다. 대부분의 경우 이러한 enum에 액세스합니다. 전역 객체에서 삭제합니다. 예를 들어, Folder.setSharing(accessType, permissionType) 다음과 같습니다.

// 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);