You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在特定法定假日停止Google App Script的工作日触发器?

修改后的工作日触发脚本(排除指定法定假日)

以下是调整后的完整代码,已加入排除1月26日、8月15日、10月2日的逻辑:

function shouldRunTrigger() {
  // 定义需要排除的法定假日(格式:"月份-日期",注意月份从0开始)
  var publicHolidays = ["0-26", "7-15", "9-2"];
  var date = new Date();
  var dayOfWeek = date.getDay();
  
  // 判断是否是周末(周日=0,周六=6)
  if (dayOfWeek === 0 || dayOfWeek === 6) {
    return false;
  }
  
  // 组合当前日期的"月-日"字符串
  var currentMonthDay = date.getMonth() + "-" + date.getDate();
  
  // 检查是否属于法定假日
  if (publicHolidays.includes(currentMonthDay)) {
    return false;
  }
  
  return true;
}

function myTrigger() {
  if (!shouldRunTrigger()) return;
  // 这里写你的触发逻辑代码
}

关键修改说明:

  • 新增publicHolidays数组存储需排除的日期,格式为"月份-日期",注意JavaScript的getMonth()返回值是0(对应1月)到11(对应12月),所以1月对应0、8月对应7、10月对应9。
  • 保留原有的周末判断逻辑,确保周末不执行脚本。
  • 通过getMonth()和getDate()获取当前月日并组合成统一格式,用includes()方法检查是否在假日列表中,若是则返回false终止执行。
  • 仅当日期既不是周末、也不在法定假日列表时,才返回true允许触发后续逻辑。

内容的提问来源于stack exchange,提问作者Rajesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 01:15:54