创建基于年度时间的触发器

时间:2015-05-04 17:16:36

标签: javascript google-apps-script

我正在尝试创建一个将在每年1月2日运行的触发器。

timedrive触发器只发送到每月发生,这不起作用,所以我想通过GAS添加它......我在搜索中找到了这个:

 var triggerDay = new Date(2012, 11, 1);
 ScriptApp.newTrigger("myFunction")
   .timeBased()
   .at(triggerDay)
   .create();

at - https://developers.google.com/apps-script/reference/script/clock-trigger-builder

我的想法是这样改变:

     var d =  new Date(new Date());
     var yr = d.getFullYear();
     var triggerDay = new Date(yr, 1, 2);
     ScriptApp.newTrigger("myFunction")
       .timeBased()
       .at(triggerDay)
       .create();

但我认为这不会起作用,因为它会在当年创造一次触发器。有没有人有什么建议?如果我创建了一个设置为每日触发器的函数,然后又会创建触发器脚本,那该怎么办?

1 个答案:

答案 0 :(得分:0)

创建一个每天运行的触发器,如果​​它是正确的日期则执行某些操作,如果错误的日期则不执行任何操作。

function myTrigger() {
  //var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);
  //You can omit any of the last 4 parameters
  var dateToCheck = new Date(2016, 1, 2);
  var todaysDate = new Date();

  if (todaysDate === dateToCheck) {
    //Do something
    .... run your code here
  };
};