2017-09-16 82 views
0

我从触发器捕获文件ID,并检查驱动器中是否存在文件。如果任何触发器关联文件丢失,或者如果是Apps脚本openById文档(这很自然)中提到的垃圾,下面的脚本会抛出异常并突然终止脚本。我如何克服这一点?使用触发文件ID检查Google Drive中是否存在文件

function getForms() { 
    try { 
     var formsList = []; 
     var triggers = ScriptApp.getProjectTriggers(); 
     for (var i = 0; i < triggers.length; i++) { 
      var fid = triggers[i].getTriggerSourceId(); 
      if (fid) { 
       var title = FormApp.openById(fid).getTitle() == "" ? "Untitled" : FormApp.openById(fid).getTitle(); 
       formsList.push([title, fid]); 
      } 
     } 
     return formsList; 
    } catch (e) { 
     ;//catch errors 
    } 
} 
+0

什么异常/错误您收到的

try { if (fid) { var title = FormApp.openById(fid).getTitle() == "" ? "Untitled" : FormApp.openById(fid).getTitle(); formsList.push([title, fid]); } } catch (e) { Logger.log(e.message); } 

使用尝试捕捉内部的循环,而不是外? –

回答

1

您可以使用trycatch声明明智地避免了Exception:在没用的地方

+0

那是伟大的代码! –