首页 > 解决方案 > 用于在特定日期停止触发器的 Google 应用程序脚本

问题描述

我有一个脚本函数,我创建了一个每小时运行一次的触发器

我需要在特定的日期和时间停止该触发器,例如我不想从周五下午 5 点到周六晚上 10 点运行它

我找到了一个白天停止它的功能

//Skip week-end
var day = new Date();
if (day.getDay()>5 || day.getDay()==0) {
  return;
}

但我不知道如何更具体地从周五下午 5 点到周六晚上 10 点不运行它

请问有什么帮助吗?

标签: google-apps-scriptgoogle-sheets

解决方案


如果日期和时间在指定时间段内,您可能希望在触发器函数中包含一个检查以跳过处理。

function shouldRunTrigger() {
  var days = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
  var date = new Date();
  var day = days[date.getDay()];
  var hours = date.getHours();
  if ((day === "Fri" && hours >= 17) || (day === "Sat" && hours <= 22)) {
    return false;
  }
  return true;
}

function myTrigger() {
  if (!shouldRunTrigger()) return;
  // trigger code here
}

推荐阅读