这是一个新来的人。请多多包涵。我希望我提出聪明的问题。如果没有,请协助,以便我可以利用你的集体智慧。
我的Google Gmail帐户中有不需要的电子邮件
很多都是营销相关的,7天后肯定是不必要的
浏览器Google或Firefox
OS WIN 7 Pro。
因此,我希望删除分配了删除我文件夹的7天内的电子邮件,并归档其他非删除我的分配。
建议搜索简单解决方案的小样本脚本的代码是:
function cleanUp() {
var delayDays = 7 // Enter # of days before messages are moved to trash
var maxDate = new Date();
maxDate.setDate(maxDate.getDate()-delayDays);
var label = GmailApp.getUserLabelByName("delete me");
var threads = label.getThreads();
for (var i = 0; i < threads.length; i++) {
if (threads[i].getLastMessageDate()<maxDate)
{
threads[i].moveToTrash();
}
}
}
function archiveInbox() {
// Every thread in your Inbox that is read, older than seven days, and not labeled "delete me".
var threads = GmailApp.search('label:inbox is:read older_than:2d -label:"delete me"');
for (var i = 0; i < threads.length; i++) {
threads[i].moveToArchive();
}
}
我的问题是:我怎么知道“删除我”正在运行?我点击运行然后它说它是,但没有任何反应,我的Gmail帐户中的电子邮件数量是相同的。
还运行'archive me'脚本,即使它显示它正在运行,似乎也没有发生任何事情。
答案 0 :(得分:2)
如果您查看以下链接,它提供了排除/调试代码的绝佳步骤: https://developers.google.com/apps-script/troubleshooting
它还解释了Shahar和Arun正在讨论的内容,但更详细。
对于您的问题,您无法真正比较这两个日期。你应该这样做:
if (threads[i].getLastMessageDate()< new Date(maxDate))
干杯。