Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.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,我正在尝试创建一个每年1月2日运行的触发器 timedrive触发器只会上升到每月一次,这将不起作用,因此我考虑通过GAS添加它…我在搜索中发现: var triggerDay = new Date(2012, 11, 1); ScriptApp.newTrigger("myFunction") .timeBased() .at(triggerDay) .create(); 在-- 我的想法是这样改变: var d = new Date(new Date())

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

timedrive触发器只会上升到每月一次,这将不起作用,因此我考虑通过GAS添加它…我在搜索中发现:

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

我的想法是这样改变:

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

但我不认为这会起作用,因为它会在今年触发一次。有人有什么建议吗?如果我创建了一个设置为每日触发器的函数,该函数反过来会创建触发器脚本……这会起作用吗?

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

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
  };
};

好的,按照您的想法,我为函数“myTrigger()”创建了一个安装触发器,该函数设置为每天运行……每天该触发器运行并检查当前日期是否正确(或者如果是下一天,可能会更好,日期是明年1月1日。如果是,则函数将创建一个仅在该日期运行的新触发器?我将尝试此操作并返回给您。无需创建第二个触发器。只要在满足条件的情况下运行需要运行的任何代码即可。