Class Trigger
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
详细文档
getEventType()
返回触发器触发的事件类型。
const triggers = ScriptApp.getProjectTriggers();
for (let i = 0; i < triggers.length; i++) {
if (triggers[i].getEventType() === ScriptApp.EventType.CLOCK) {
// Some code here - other options are:
// ScriptApp.EventType.ON_EDIT
// ScriptApp.EventType.ON_FORM_SUBMIT
// ScriptApp.EventType.ON_OPEN
}
}
返回
EventType
- 此触发器所对应的事件类型
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/script.scriptapp
getHandlerFunction()
返回触发器触发时要调用的函数。
// Create a trigger for the script.
ScriptApp.newTrigger('myFunction')
.forSpreadsheet('id of my spreadsheet')
.onEdit()
.create();
Logger.log(ScriptApp.getProjectTriggers()[0]
.getHandlerFunction()); // logs "myFunction"
返回
String
- 方法名称
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/script.scriptapp
getTriggerSource()
返回会导致触发器触发的事件的来源。
例如,电子表格 onEdit 触发器会返回 SPREADSHEETS,基于时间的触发器会返回 CLOCK。
const triggers = ScriptApp.getProjectTriggers();
for (let i = 0; i < triggers.length; i++) {
if (triggers[i].getTriggerSource() === ScriptApp.TriggerSource.CLOCK) {
Logger.log(`${triggers[i].getUniqueId()} source is clock`);
} else if (
triggers[i].getTriggerSource() === ScriptApp.TriggerSource.SPREADSHEETS) {
Logger.log(`${triggers[i].getUniqueId()} source is spreadsheets`);
}
}
返回
TriggerSource
- 此触发器所适用的发布商
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/script.scriptapp
getTriggerSourceId()
返回特定于来源的 ID。
例如,如果触发器来源是电子表格,则此字段就是电子表格的 ID。对于时钟事件,此值会返回 null。
返回
String
- 此触发器所对应的发布商中实体的 ID
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/script.scriptapp
getUniqueId()
返回一个唯一标识符,可用于区分触发器。
返回
String
- 触发器的唯一标识符
授权
使用此方法的脚本需要获得以下一个或多个范围的授权:
-
https://www.googleapis.com/auth/script.scriptapp
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-26。
[null,null,["最后更新时间 (UTC):2025-07-26。"],[[["\u003cp\u003eA script trigger is a function that automatically runs in response to a certain event, like opening a document, editing a cell, or a timed event.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eTrigger\u003c/code\u003e object provides methods to access information about the trigger such as its event type, associated function, source, source ID, and a unique identifier.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003egetEventType()\u003c/code\u003e, \u003ccode\u003egetHandlerFunction()\u003c/code\u003e, \u003ccode\u003egetTriggerSource()\u003c/code\u003e, \u003ccode\u003egetTriggerSourceId()\u003c/code\u003e, and \u003ccode\u003egetUniqueId()\u003c/code\u003e methods provide information on the trigger's configuration and behavior.\u003c/p\u003e\n"],["\u003cp\u003eAll methods associated with the Trigger object necessitate authorization with the scope \u003ccode\u003ehttps://www.googleapis.com/auth/script.scriptapp\u003c/code\u003e.\u003c/p\u003e\n"]]],["This document details the functionality of script triggers, which are automated actions. Key actions include retrieving information about a trigger using five methods: `getEventType()`, which identifies the event type that activates the trigger; `getHandlerFunction()`, which returns the function executed when the trigger fires; `getTriggerSource()`, which specifies the event source; `getTriggerSourceId()`, which provides the source's ID; and `getUniqueId()`, which offers a unique identifier for the trigger. All methods require specific authorization scopes.\n"],null,["# Class Trigger\n\nTrigger\n\nA script trigger. \n\n### Methods\n\n| Method | Return type | Brief description |\n|-----------------------------------------------|---------------------------------------------------------------|---------------------------------------------------------------------------------------|\n| [getEventType()](#getEventType()) | [EventType](/apps-script/reference/script/event-type) | Returns the event type that the trigger fires on. |\n| [getHandlerFunction()](#getHandlerFunction()) | `String` | Returns the function that will be called when the trigger fires. |\n| [getTriggerSource()](#getTriggerSource()) | [TriggerSource](/apps-script/reference/script/trigger-source) | Returns the source of events that will cause the trigger to fire. |\n| [getTriggerSourceId()](#getTriggerSourceId()) | `String` | Returns the id specific to the source. |\n| [getUniqueId()](#getUniqueId()) | `String` | Returns a unique identifier that can be used to distinguish triggers from each other. |\n\nDetailed documentation\n----------------------\n\n### `get``Event``Type()`\n\nReturns the event type that the trigger fires on.\n\n```javascript\nconst triggers = ScriptApp.getProjectTriggers();\nfor (let i = 0; i \u003c triggers.length; i++) {\n if (triggers[i].getEventType() === ScriptApp.EventType.CLOCK) {\n // Some code here - other options are:\n // ScriptApp.EventType.ON_EDIT\n // ScriptApp.EventType.ON_FORM_SUBMIT\n // ScriptApp.EventType.ON_OPEN\n }\n}\n```\n\n#### Return\n\n\n[EventType](/apps-script/reference/script/event-type) --- the event type that this is a trigger for\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/script.scriptapp`\n\n*** ** * ** ***\n\n### `get``Handler``Function()`\n\nReturns the function that will be called when the trigger fires.\n\n```javascript\n// Create a trigger for the script.\nScriptApp.newTrigger('myFunction')\n .forSpreadsheet('id of my spreadsheet')\n .onEdit()\n .create();\nLogger.log(ScriptApp.getProjectTriggers()[0]\n .getHandlerFunction()); // logs \"myFunction\"\n```\n\n#### Return\n\n\n`String` --- the method name\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/script.scriptapp`\n\n*** ** * ** ***\n\n### `get``Trigger``Source()`\n\nReturns the source of events that will cause the trigger to fire.\n\nFor example, a spreadsheet onEdit trigger would return SPREADSHEETS, or a time based trigger\nwould return CLOCK.\n\n```javascript\nconst triggers = ScriptApp.getProjectTriggers();\nfor (let i = 0; i \u003c triggers.length; i++) {\n if (triggers[i].getTriggerSource() === ScriptApp.TriggerSource.CLOCK) {\n Logger.log(`${triggers[i].getUniqueId()} source is clock`);\n } else if (\n triggers[i].getTriggerSource() === ScriptApp.TriggerSource.SPREADSHEETS) {\n Logger.log(`${triggers[i].getUniqueId()} source is spreadsheets`);\n }\n}\n```\n\n#### Return\n\n\n[TriggerSource](/apps-script/reference/script/trigger-source) --- the publisher this is a trigger for\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/script.scriptapp`\n\n*** ** * ** ***\n\n### `get``Trigger``Source``Id()`\n\nReturns the id specific to the source.\n\nFor example, if the trigger source is a spreadsheet, this would be the id of the\nspreadsheet. For clock events this returns null.\n\n#### Return\n\n\n`String` --- the id of the entity in the publisher that this is a trigger for\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/script.scriptapp`\n\n*** ** * ** ***\n\n### `get``Unique``Id()`\n\nReturns a unique identifier that can be used to distinguish triggers from each other.\n\n#### Return\n\n\n`String` --- the unique identifier of the trigger\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/script.scriptapp`"]]