0

我是谷歌应用脚​​本的新手,我正在考虑如何避免在我的应用中对谷歌电子表格进行过多调用。如果我在这样的函数中打开电子表格: var ss = SpreadsheetApp.openById("id"); 我可以 var ss = SpreadsheetApp.getActiveSpreadSheet(); 在函数内访问该表多久?第二个变体实际上有助于加快我的脚本速度吗?

我当然可以将第二个 var 声明为全局变量,但我只会在有益的情况下这样做(封装等)

4

2 回答 2

1

我不完全是专家,但据我所知,第二个电话绝对是多余的。使用 openbyid,您确实拥有使用电子表格所需的一切。它保持打开状态,直到您的脚本结束。

于 2013-10-12T00:00:10.990 回答
0

只要变量存在于其范围内,您就可以使用它。你不能序列化它。如果你把它放在全局中,它也可以工作。请记住,全局将在下一次脚本调用时重置,它们不会在请求之间持续存在。我怀疑 getActiveSpreadsheet 与通过 id 打开有什么不同。

于 2013-10-11T03:07:51.140 回答