1
我有一個谷歌應用程序的腳本,採取電子表格,並循環遍歷行,逐列獲取值,並生成一個RSS提要。谷歌應用程序腳本由於for循環運行緩慢
我有一些性能問題,這是由於我認爲的foor循環,並查詢了很多值。
關於如何優化這個的任何見解?謝謝!
我有一個谷歌應用程序的腳本,採取電子表格,並循環遍歷行,逐列獲取值,並生成一個RSS提要。谷歌應用程序腳本由於for循環運行緩慢
我有一些性能問題,這是由於我認爲的foor循環,並查詢了很多值。
關於如何優化這個的任何見解?謝謝!
調用getCell
和setValue
一遍又一遍大概是什麼減緩下來這麼多。每次您撥打setValue()
時,都會發出新的IO通話,速度很慢。一次性加載和保存數據是最好的。
例如,從裝載的範圍內的所有值在開始用:
var values = range.getValues();
然後通過他得到的二維陣列(而不是使用getCell(i, 2)
values[i - 1][1]
)迭代。
當您需要更改值使用:當您完成通話
values[i][j] = newValue;
然後:
range.setValues(values);
這樣你最小化IO調用兩種:一種在加載最後開始和保存更改。
鏈接頁面被刪除 –