我使用这部分代码(以及时间触发器)每隔5分钟运行一次脚本"工作时间"但现在我需要一些调整
function officeHours(){
var nowH=new Date().getHours();
var nowD=new Date().getDay();
Logger.log('day : '+nowD+' Hours : '+nowH)
if(nowH>17||nowH<8||nowD==6||nowD==0){return}
Browser.msgBox('time to work !');//normally your real function should begin here...
}
但是如何更具体?例如设定工作时间为8:30至17:30或其他工作时间,例如轮班(工作时间)从一天开始到第二天结束(从第一天的22:30到第二天的06:30)?
答案 0 :(得分:2)
您可以检查当前小时是否在班次小时之间,如本例所示。
function officeHours(startShift, endShift){
startShift = startShift || 23;
endShift = endShift || 7;
var currentHour = new Date().getHours();
if (startShift > endShift) {
if (currentHour >= startShift || currentHour <= endShift) {
// run the trigger function
}
} else {
if (currentHour >= startShift && currentHour <= endShift) {
// run the trigger function
}
}
}