跳到主要内容

parseCron()

function parseCron(expression): CronParts;

Defined in: packages/utils/src/cron/describeCron.ts:298

解析 cron 表达式并返回各字段

支持标准 5 段格式(分 时 日 月 周)和 6 段格式(秒 分 时 日 月 周)。

每个字段都做语法与取值范围校验:

  • 语法:field := '*' | item (',' item)*,item := ('*' | n | n '-' n) ['/' step], step ≥ 1;范围起点不得大于终点;* 不能与其他分项并列。
  • 取值:秒 0-59、分 0-59、时 0-23、日 1-31、月 1-12、周 0-7(0 与 7 均为周日)。

Parameters​

ParameterTypeDescription
expressionstringcron 表达式字符串

Returns​

CronParts

解析后的各字段对象(原样保留每段的字符串)

Throws​

Error 段数不是 5 或 6,或任一字段语法非法 / 取值越界

Examples​

parseCron('0 9 * * 1-5');
// `{ minute: '0', hour: '9', day: '*', month: '*', dow: '1-5' }`
parseCron('0 0 1 13 *'); // 抛错:月字段 "13" 取值 13 超出范围 1-12