Google apps script 如何获取项目中所有函数的列表?
我想以编程方式在Google Apps中获取项目中所有函数的列表。在任何服务中似乎都没有一个方法可以轻松地提取它们,除了它似乎以某种方式存储在.this函数中。最好的方法是什么?Google apps script 如何获取项目中所有函数的列表?,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我想以编程方式在Google Apps中获取项目中所有函数的列表。在任何服务中似乎都没有一个方法可以轻松地提取它们,除了它似乎以某种方式存储在.this函数中。最好的方法是什么? 您想要检索函数的列表 您希望使用谷歌应用程序脚本实现这一点 我可以像上面那样理解。如果我的理解是正确的,那么这个答案呢?请把这看作是几个答案中的一个 模式1: 在此模式中,应用程序脚本API用于检索函数列表。使用Apps脚本API的projects.getContent方法时,可以检索Google Apps脚本项目中
- 您想要检索函数的列表
- 您希望使用谷歌应用程序脚本实现这一点
文件(functionSet,name)
设置为字段
示例脚本:
这是谷歌应用程序脚本的一个示例脚本。使用应用程序脚本API的projects.getContent方法。在使用此脚本之前,请执行以下设置
设置:
添加https://www.googleapis.com/auth/script.projects.readonly
到作用域
在API控制台启用应用程序脚本API
复制并粘贴以下示例脚本
运行myFunction()
这样,可以检索所有函数的列表
脚本:
模式2:
在该模式中,使用此
。你的问题也提到了这一点。在这种情况下,不使用API。请将以下脚本复制并粘贴到脚本编辑器中,然后运行myFunction()
。这样,可以检索所有函数的列表
示例脚本:
注:
- 此外,两种模式都可以检索每个函数的脚本
参考资料:
如果我误解了你的问题,而这不是你想要的方向,我道歉。谢谢!你正确理解了我的问题,模式2正是我想要的。我想避免使用API。我从模式2测试了您的脚本,它准确地记录了函数。@Jeff感谢您的回复。我很高兴你的问题解决了。也谢谢。在哪里可以了解有关此字段=文件(functionSet%2Cname)
@Cooper的更多信息?我可以从学习吗?在我的情况下,我使用。此API检索的值包括Google API的所有值。由此,我检查字段值。GoogleAPI发现服务有两种方法:list和getRest。当api名称和版本已知时,可以通过getRest方法直接检索这些值。这个方法对我来说更简单。或者我认为也可以从每个方法的“响应体”中检查字段值。如果这些不是您期望的方向,我很抱歉。模式2工作得很好,但它不会在HTML中的任何脚本中包含函数
function myFunction() {
var scriptId = "###"; // Please set the script ID here.
var url = "https://script.googleapis.com/v1/projects/" + scriptId + "/content?fields=files(functionSet%2Cname)";
var options = {
"method" : "get",
"headers": {"Authorization": "Bearer " + ScriptApp.getOAuthToken()},
};
var res = UrlFetchApp.fetch(url, options);
Logger.log(res.getContentText())
}
function myFunction() {
for (var key in this) {
if (typeof this[key] == "function") {
Logger.log(key)
}
}
}