如何从 FormApp 对象中删除所有项目?

Flo*_*ian 2 javascript google-apps-script google-forms

我最近问了一个关于如何将项目从 Google 电子表格添加到 Google 表单的问题。而且效果很好。FormApp.create()但是,我必须使用而不是使用,.openByUrl()因为 ID 必须保持不变。问题是,如果我再次运行我的脚本,它会打开现有表单(很棒),然后将更多项目附加到现有表单中。

这种行为非常有道理,但并不是我想要的。所以我想在从电子表格中添加新项目之前,我只需删除所有现有项目。我咨询了 Google 开发网站的 Form Services,觉得我应该拥有所有的部分。不过,我不能把它们放在一起。

我现在正在执行以下操作:

var form = FormApp.openByUrl('https://docs.google.com/forms/d/.../edit');
var items = form.getItems();
for (var i in items) {
    form.deleteItem(i);
}
Run Code Online (Sandbox Code Playgroud)

但是,这会给我一个超出范围的错误。有人可以指出我正确的方向吗?

小智 5

function clearForm(){
  var items = form.getItems();
  while(items.length > 0){
    form.deleteItem(items.pop());
  }
}
Run Code Online (Sandbox Code Playgroud)