use*_*568 2 directory boolean function google-apps-script google-drive-api
我正在使用谷歌应用程序脚本在谷歌驱动器上创建一个文件夹.我不想在驱动器上有任何重复,所以我创建了一个函数来查明该文件夹是否存在.
我将所有文件夹名称放入一个数组,然后查看该数组中是否存在文件夹名称.虽然......总是返回false
你能看到我在哪里出错吗?或者是否有更好的方法来查明驱动器上是否存在文件夹?
function doesContainerExist(container) {
var folders = DriveApp.getFolders();
var Folders = new Array;
var boolean;
while(folders.hasNext()) {
Folders.push(folders.next());
}
if(Folders.indexOf(container) == -1) {
boolean = false;
} else {
boolean = true;
}
Logger.log(container);
return boolean;
};
Run Code Online (Sandbox Code Playgroud)
还有另一种有效的方法来检查文件夹是否已经存在,下面是带有测试功能的代码供您尝试:
function testTest(){
Logger.log(testFolder('Photos'));// returns true if folder exists, false if it doesn't
}
function testFolder(folderName){
var exist = true;
try{var testFolder = DocsList.getFolder(folderName)}
catch(err){exist=false}
return exist;
}
Run Code Online (Sandbox Code Playgroud)
由于您的最终目的是创建一个文件夹,您可以直接在脚本的"catch"部分创建它,或者只是将try/catch集成到您用来创建文件夹的现有代码中.
归档时间: |
|
查看次数: |
3608 次 |
最近记录: |