Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从特定的邮件地址获取最近的电子邮件_Javascript_Google Apps Script - Fatal编程技术网

Javascript 从特定的邮件地址获取最近的电子邮件

Javascript 从特定的邮件地址获取最近的电子邮件,javascript,google-apps-script,Javascript,Google Apps Script,我正在使用下面的google apps脚本从收件箱中的特定邮件地址搜索最近的电子邮件。此电子邮件没有标签,此脚本正在尝试查看所有邮件。如何最大限度地减少对电子邮件的搜索并删除最近的电子邮件 function myFunction() { var searchterm = 'myemail@mydomain.com'; var threads = GmailApp.search(searchterm); var messages = GmailApp.getMessagesFor

我正在使用下面的google apps脚本从收件箱中的特定邮件地址搜索最近的电子邮件。此电子邮件没有标签,此脚本正在尝试查看所有邮件。如何最大限度地减少对电子邮件的搜索并删除最近的电子邮件

function myFunction() 
{  
  var searchterm = 'myemail@mydomain.com';
  var threads = GmailApp.search(searchterm);
  var messages = GmailApp.getMessagesForThreads(threads);

  for (var i = 0; i < threads.length; i++) 
  {
      for (var j = 0; j < messages[i].length; j++)
      {
        var mailFrom = messages[i][j].getFrom();
      }
  }
}
函数myFunction()
{  
var searchterm=myemail@mydomain.com';
var threads=GmailApp.search(searchterm);
var messages=GmailApp.getMessagesForThreads(线程);
对于(var i=0;i
这个示例脚本怎么样

修改点:
  • 对于
    var threads=GmailApp.search(searchterm)
    线程[0]
    是最新的线程
  • From
    只是特定的邮件地址时,它会检索邮件
  • 当循环使用
    forEach()
    处理
    线程[0]
    时,较低的元素是较新的元素
  • 下面是反映这些情况的脚本

    脚本: 结果:
    [姓名,2017年1月1日星期六12:34:56 GMT]
    
    当测量处理时间时,我确认这个脚本为您的示例脚本带来了大约30%的改进。虽然我不知道这是否是最好的,但如果这对你有用,我很高兴


    如果我误解了你的问题,很抱歉。

    你可以使用以下搜索词:

    var searchterm = "from: myemail@mydomain.com newer:"+parseInt(date/1000);
    
    其中date是javascript日期变量的时间值。例如,当前日期可以计算为:

    date = new Date().getTime();
    
    此searchterm将返回比上述日期更新的电子邮件线程

    var searchterm = "from: myemail@mydomain.com newer:"+parseInt(date/1000);
    
    date = new Date().getTime();