Dev.to
7/1/2026

I finally understood cron expressions by building an explainer for them
Short summary
A developer's guide to understanding cron expressions by implementing a simple parser. Covers the five-field syntax (minute, hour, day-of-month, month, day-of-week), field operators (comma lists, ranges, steps), and surprising behavior like day-of-week/day-of-month OR matching. Includes practical JavaScript code and common pitfalls like the month off-by-one bug.
- •Cron syntax has five fields with three operators: commas for lists, hyphens for ranges, slashes for steps
- •The day-of-week and day-of-month fields use OR logic, not AND—either condition triggers the job
- •JavaScript's Date.getMonth() is off-by-one from cron's month field, a hidden bug in scheduling code
Generated with AI, which can make mistakes.
Is this a good recommendation for you?



