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

如何使用node-cron在指定时段(9:00-15:30)按间隔调度任务?

调整node-cron表达式实现指定时段调度

你的需求是周一至周五9:00 AM到3:30 PM每10秒执行任务,当前代码的问题在于小时范围到16点(下午4点),且时间粒度不符合每10秒的要求,需要针对时间范围和执行间隔做精准调整。

核心思路

node-cron的表达式格式为 秒 分 时 日 月 周,我们需要拆分两个时间区间来覆盖需求:

  1. 9:00 AM - 2:59 PM(小时9-14):整小时内任意分钟都允许执行
  2. 3:00 PM - 3:30 PM(小时15):仅允许0-30分钟执行
    同时将执行间隔设为每10秒(秒位写*/10)。

调整后的代码

const job = cron.schedule('*/10 0-59 9-14 * * 1-5, */10 0-30 15 * * 1-5', () => {
  console.log(new Date());
}, {
  timezone: 'Asia/Kolkata'
});

表达式说明

  • */10 0-59 9-14 * * 1-5:周一至周五,9点到14点(下午2点),每10秒执行一次
  • */10 0-30 15 * * 1-5:周一至周五,15点(下午3点)的0-30分钟,每10秒执行一次

两个规则用逗号分隔,node-cron会自动合并执行逻辑,确保任务只在你指定的时段内按间隔运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 08:22:50