2016-03-01 49 views
0

我不想認爲標籤foo存在。GmailApp createLabel vs getUserLabelByName

我必須做...

var foo = GmailApp.getUserLabelByName("foo"); 
if (foo == null) { 
    var foo = GmailApp.createLabel("foo"); 
} 

抑或是足以做以下(這似乎工作!)...

var foo = GmailApp.createLabel("foo"); 

問題

  1. 哪#1或#2是否正確?
  2. 如果#2有效,爲什麼要做#1?
  3. 有沒有第三種更好的方法來寫同樣的東西?

回答

1

只需要GmailApp.createLabel("Label_Name")就足以創建一個新的標籤。即使該名稱中的標籤存在。

所以,

  1. 兩者都是正確的,在這個意義上,兩者都工作。
  2. #1是多餘的。那麼爲什麼要麻煩這些不必要的檢查。
  3. 它非常簡單和高效。爲什麼你在尋找更好的 選項?它記錄在 here

刪除,你必須使用過程的第一種方法的標籤:

// have to get the label by name first 
var label = GmailApp.getUserLabelByName("FOO"); 
GmailApp.deleteLabel(label); 
+0

感謝。我需要第二個意見。 – Vishal

相關問題