首页 >web前端 >js教程 >如何优化 Google Apps 脚本处理时间以避免速度变慢?

如何优化 Google Apps 脚本处理时间以避免速度变慢?

Susan Sarandon
Susan Sarandon原创
2024-12-02 19:26:15832浏览

How Can I Optimize Google Apps Script Processing Time to Avoid Slowdowns?

优化 Google Apps 脚本中的处理时间

问题:

Google 中的处理时间过长应用程序脚本,特别是由于重复使用 getValue 和 setValue 方法来获取范围

描述:

要减少对 Google 服务器的调用次数并尽量减少读写操作的交替,请考虑使用以下优化:

尽量减少致电服务:

  • 移动可在 Google Apps 脚本本身内执行的操作,以避免昂贵的网络请求。

预测缓存:

  • 通过最小化数量来利用 Google Apps 脚本的内置缓存

最小化交替读/写:

  • 避免交替读和写操作,因为这会影响外观的有效性提前缓存。

使用数组:

  • 使用单个命令将数据读入数组并对数组执行操作,然后使用另一个命令将数据写回工作表。

示例:

以下是如何优化脚本的示例提供:

原始慢速脚本:

for (row = 0; row < lastRow; row++) {
range1 = s.getRange(row + 1, 1);
cellValue = range1.getValue();

if (dash === '-' &amp;&amp; offset3) {
s.getRange(row + 1, 1, lastRow).offset(3, 0).moveTo(range1.offset(4, 0));
};    
}

优化的快速脚本:

const lastRow = s.getRange("A:A").getLastRow();
const range1 = s.getRange(`A1:A${lastRow}`);
let cellValues = range1.getValues();

cellValues.forEach((value, index) => {
if (value.startsWith("-") &amp;&amp; cellValues[index + 3]) {
range1.getRange(index + 1, 1, lastRow).moveTo(range1.offset(index + 4, 0));
}   
});

通过实现这些优化,该脚本显着减少了对服务的调用次数并简化了读/写操作,从而加快了处理速度次。

以上是如何优化 Google Apps 脚本处理时间以避免速度变慢?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn