首頁 >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