-1

对于这个疯狂的问题,我深表歉意,但是否有可能出现以下情况:

var data = ss.getSheetByName("info").getDataRange().getValues();

称为全局(即,在使用任何函数之前),然后让所有函数都可以使用该数据变量?我的程序主要读取数组,其中主表有超过 5k 行和多列信息,另一张表有近 15k 行/多列信息。

想知道这样做是否会节省时间,而不是每次调用函数时都调用它。

我一直在使用数组,因为我听说 Google 可以更快地翻阅它找到特定的数据然后它是对象等。抱歉,如果我在这里做零意义;)

4

1 回答 1

0

每次执行时都会加载 Google Apps 脚本全局范围内的代码,这意味着如果您在全局范围内声明了一个变量,它将在每次执行时被“覆盖”。

如果您有一个“主”函数调用多个需要相同对象实例的辅助函数,这可能会有所帮助,但如果您有不需要该对象实例的函数,这可能会产生“轻微”负面影响。如果您的电子表格需要很长时间才能加载,那么负面影响将不会是“轻微”的,它们将是显而易见的、重要的甚至是显着的负面影响。

于 2022-02-07T01:40:26.237 回答