Best Practices. Use batch operations
Код ниже неоптимальный, т.к. добавление строки происходит на каждой итерации цикла
/* до этого момента происходила магия */
sheet.clear();
sheet.appendRow(["id", "url", "hide_url"]);
while (contents.hasNext()) {
file = contents.next();
name = file.getName();
url = file.getId();
hide_url = file.getUrl();
date = [name, url, hide_url];
sheet.appendRow(date);
}
/* продолжение колдовства */Необходимо создать массив данных и записать его один раз
/* до этого момента происходила магия */
sheet.clear();
var values = [
["id", "url", "hide_url"]
];
while (contents.hasNext()) {
var file = contents.next(),
name = file.getName(),
url = file.getId(),
hide_url = file.getUrl(),
date = [name, url, hide_url];
values.push(date);
}
if (values.length)
sheet.getRange(1, 1, values.length, values[0].length).setValues(values);
/* продолжение колдовства */