0
我想,如果一個文件夾已經存在創造與年底上升數的新文件夾,但我在無限循環增量while循環變得無限
var i=1;
while (myFolder.exists == true) {
var myFolder = new Folder(wf+"/"+curFile+"_folder"+i)
i++;
};
結束任何幫助,將不勝感激。
我想,如果一個文件夾已經存在創造與年底上升數的新文件夾,但我在無限循環增量while循環變得無限
var i=1;
while (myFolder.exists == true) {
var myFolder = new Folder(wf+"/"+curFile+"_folder"+i)
i++;
};
結束任何幫助,將不勝感激。
它看起來像myFolder.exists
是一種方法,而不是一個性質,所以你必須把它叫做:否則
while (myFolder.exists()) {
var myFolder = new Folder(wf + "/" + curFile + "_folder" + i);
i++;
};
,您將得到評估方法本身,這的確是始終true
在布爾上下文。
請注意,在循環內重新定義myFolder
在這裏可能不是問題。 Javascript中的循環與封閉代碼具有相同的範圍,並且該變量將被提升到該範圍的開始處。正如jdwire所說,它最初可能是undefined
,但那麼你會收到一個錯誤,而不是觸發無限循環。
您不斷重新聲明myFolder並創建新文件夾(無論這些文件是什麼)。 – j08691 2013-03-01 15:36:00
結束循環的if條件在哪裏? – vikasing 2013-03-01 15:36:52
在while循環的第一次迭代之前聲明瞭myFolder變量。 while循環的主體永遠不會被執行,因爲myFolder是null,並且會拋出一個錯誤。 – 2013-03-01 15:38:28