บริการของ Google ในตัว

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

Google Apps Script ให้บริการในตัวมากกว่า 30 รายการเพื่อใช้สําหรับโต้ตอบกับข้อมูลผู้ใช้ ระบบอื่นๆ ของ Google และระบบภายนอก บริการเหล่านี้มีเป็นออบเจ็กต์ส่วนกลางเช่นเดียวกับออบเจ็กต์มาตรฐานของ Math ของ JavaScript ตัวอย่างเช่น เช่นเดียวกับที่ Math เสนอวิธีการอย่างเช่น random() และค่าคงที่ เช่น PI, Apps Script และบริการมีวิธีการอย่างเช่น openById(id), คลาส (ออบเจ็กต์ย่อย) เช่น และ Enum เช่น DataValidationCriteria

ระบบจะรวบรวมเอกสารประกอบอ้างอิงสําหรับบริการที่ควบคุมGoogle Workspace ผลิตภัณฑ์ในส่วน "Google Workspace บริการ" ส่วนหัว "reference" ในแถบด้านข้างของไซต์นี้ มีการรวบรวมบริการด้านสาธารณูปโภค (สําหรับสิ่งต่างๆ เช่น การสร้างอินเทอร์เฟซผู้ใช้ การแยกวิเคราะห์ XML หรือการเขียนข้อมูลบันทึก) ในส่วน "Script Services"

ฟีเจอร์ JavaScript สมัยใหม่

Apps Script รองรับรันไทม์ของ JavaScript 2 แบบ ได้แก่ รันไทม์แบบ V8 ที่ทันสมัยและรันไทม์ที่เก่ากว่าซึ่งขับเคลื่อนโดย Mozilla'sล่าม JavaScript แรด

รันไทม์ V8 รองรับไวยากรณ์และฟีเจอร์ของ ECMAScript ที่ทันสมัย รันไทม์ของ Rhino จะอิงตามมาตรฐาน JavaScript 1.6 แบบเก่าและฟีเจอร์บางรายการจาก 1.7 และ 1.8 คุณสามารถเลือกรันไทม์ที่ต้องการใช้กับสคริปต์ได้อย่างอิสระ แต่เราขอแนะนําให้ใช้รันไทม์ V8

รันไทม์แต่ละรายการรองรับคลาส JavaScript และออบเจ็กต์ที่พร้อมใช้งานในสคริปต์ นอกเหนือจากบริการของ Google ขั้นสูงในตัว สคริปต์สามารถใช้ออบเจ็กต์ทั่วไป เช่น Array, Date, RegExp ฯลฯ รวมถึงออบเจ็กต์ส่วนกลาง Math และ Object

การใช้การเติมข้อความอัตโนมัติ

โปรแกรมแก้ไขสคริปต์มีฟีเจอร์ "เนื้อหาช่วยเหลือ&โควต้า; หรือที่รู้จักกันโดยทั่วไปเพิ่มเติม&&tt;autocomplete," ซึ่งจะแสดงออบเจ็กต์ทั่วโลก รวมทั้งวิธีการและการแจกแจงที่ถูกต้องในบริบทปัจจุบันของสคริปต์ คําแนะนําที่เติมข้อความอัตโนมัติจะปรากฏโดยอัตโนมัติทุกครั้งที่คุณพิมพ์เครื่องหมายจุดหลังออบเจ็กต์ทั่วโลก enum หรือเมธอดเมธอดที่แสดงคลาส Apps Script เช่น

  • หากคุณพิมพ์ชื่อเต็มของออบเจ็กต์ทั่วโลกหรือเลือกออบเจ็กต์จากการเติมข้อความอัตโนมัติ จากนั้นพิมพ์ . (เครื่องหมายจุด) คุณจะเห็นวิธีการและการแจกแจงทั้งหมดของชั้นเรียนนั้น
  • หากคุณพิมพ์อักขระ 2-3 ตัว คุณจะเห็นคําแนะนําที่ถูกต้องทั้งหมดที่ขึ้นต้นด้วยอักขระเหล่านั้น

ทําความเข้าใจวัตถุทั่วโลก

แต่ละบริการมีออบเจ็กต์ส่วนกลาง (ระดับบนสุด) อย่างน้อย 1 รายการ เช่น บริการ Gmail จะเข้าถึงได้จากออบเจ็กต์ GmailApp เท่านั้น บริการบางอย่างจะมีออบเจ็กต์ส่วนกลางหลายรายการ เช่น Service Base จะมีออบเจ็กต์ส่วนกลาง 4 รายการ ได้แก่ Browser, Logger, MimeType และ Session

วิธีการโทร

ออบเจ็กต์ส่วนกลางของบริการขั้นสูงในตัวหรือเกือบทั้งหมดจะรวมวิธีการที่แสดงผลข้อมูลหรือคลาส Apps Script สคริปต์เรียกเมธอดในรูปแบบนี้

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

เช่น สคริปต์ส่งอีเมลได้โดยเรียกเมธอด sendEmail(recipient, subject, body) ของบริการ Gmail ดังนี้

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

หากเมธอดแสดงผลคลาส Apps Script อื่น คุณจะเชื่อมโยงการเรียกใช้เมธอดไว้ในบรรทัดเดียวได้ (ประเภทการส่งคืนจะแสดงทั้งในการเติมข้อความอัตโนมัติและในเอกสารอ้างอิงของเมธอด) เช่น เมธอด DocumentApp.create() จะแสดงผล Document ดังนั้นโค้ด 2 ส่วนต่อไปนี้จะเท่าเทียมกัน

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

การเข้าถึงชั้นเรียนย่อย

ทุกบริการจะมีคลาสย่อยอย่างน้อย 1 คลาสที่เข้าถึงจากระดับบนสุดไม่ได้เนื่องจากเป็นออบเจ็กต์ระดับโลก คุณจะใช้คีย์เวิร์ด new ในการสร้างชั้นเรียนเหล่านี้ไม่ได้ เนื่องจากทําได้โดยใช้คลาส JavaScript มาตรฐาน เช่น Date แต่จะเข้าถึงคลาสย่อยได้โดยการเรียกใช้เมธอดที่ส่งคืนเท่านั้น หากคุณไม่แน่ใจว่าจะเข้าถึงชั้นเรียนหนึ่งได้อย่างไร ให้ไปที่หน้ารูทสําหรับเอกสารอ้างอิงของบริการและมองหาวิธีการที่ส่งคืนชั้นเรียนที่คุณต้องการ

การจัดการกับอินเทอร์เฟซ

มีบริการจํานวนหนึ่ง ได้แก่ ชั้นเรียนพิเศษที่ติดป้ายกํากับว่า ""interface" ในเอกสารประกอบอ้างอิง คลาสเหล่านี้เป็นคลาสทั่วไปที่ใช้เป็นประเภทการคืนสินค้าสําหรับเมธอดที่ไม่สามารถระบุประเภทที่แน่นอนล่วงหน้าได้ เช่น วิธีบริการเอกสาร Body.getChild(childIndex) แสดงผลออบเจ็กต์ทั่วไป Element Element คืออินเทอร์เฟซที่แสดงคลาสอื่นๆ ซึ่งอาจเป็น Paragraph หรือ Table ออบเจ็กต์อินเทอร์เฟซมักไม่ค่อยมีประโยชน์ในตัวเอง แต่มักจะเรียกเมธอดอย่างเช่น Element.asParagraph() เพื่อแคสต์ออบเจ็กต์กลับไปยังคลาสที่แน่นอน

การทํางานกับ Enum

บริการส่วนใหญ่มี enumum (ประเภทแจกแจง) เพียงไม่กี่ค่าที่ระบุค่าไว้ ตัวอย่างเช่น บริการไดรฟ์จะใช้ Enum Access และ Permission เพื่อระบุว่าผู้ใช้รายใด มีสิทธิ์เข้าถึงไฟล์หรือโฟลเดอร์ ในเกือบทุกกรณี คุณสามารถเข้าถึง 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);