Heim >Web-Frontend >js-Tutorial >Warum ist mein Google Apps-Skript so langsam und wie kann ich die Verwendung von „getValues' und „setValues' optimieren?
Lange Verarbeitungszeit aufgrund übermäßiger Verwendung von getValues und setValues
Problem:
Die Code leidet unter übermäßiger Nutzung der Methoden getValues und setValues, was die Verarbeitung erheblich beeinträchtigen kann Zeit, insbesondere bei größeren Datensätzen.
Optimierungstechniken:
Serviceeinsätze minimieren:
Look-Ahead-Caching:
Lesen/Schreiben minimieren Operationen:
Vermeiden Sie abwechselnde Lese-/Schreibvorgänge:
Verwenden Sie Arrays:
Beispiel:
Betrachten Sie den folgenden Codeausschnitt:
// Slow version: Alternating read and write operations const sourceRange = SpreadsheetApp.getActiveSheet().getRange("A1:D2"); const targetRange = sourceRange.offset(2, 0); for (let i = 0; i < sourceRange.getNumRows(); i++) { for (let j = 0; j < sourceRange.getNumColumns(); j++) { const value = sourceRange.getCell(i + 1, j + 1).getValue(); targetRange.getCell(i + 1, j + 1).setValue(value); } } // Fast version: Batch read and write operations const sourceValues = sourceRange.getValues(); targetRange.setValues(sourceValues);
Durch Stapeln von Lese- und Schreibvorgängen wird der zweite Code erstellt Snippet reduziert die Anzahl der Anrufe bei Diensten erheblich und verbessert die Bearbeitungszeit.
Das obige ist der detaillierte Inhalt vonWarum ist mein Google Apps-Skript so langsam und wie kann ich die Verwendung von „getValues' und „setValues' optimieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!