首页 > 解决方案 > 从开始日期、每周、每月和每年获取 Cron 表达式

问题描述

Typescript 中有没有办法从开始日期派生 Cron 表达式,用于每周、每月和每年。我一直在寻找现有的代码库。

标签: javascripttypescriptcron

解决方案


  getCreateWeeklyFromStartDate(startDate: Date): string {
    const startWeekday = startDate.getDay();
    const startHour = startDate.getHours();
    const startMinute = startDate.getMinutes();
    const cronExpression = `${startMinute} ${startHour} * * ${startWeekday}`;
    return cronExpression; 
  }

  getCreateMonthlyFromStartDate(startDate: Date): string {
    const startDayOfMonth = startDate.getDate();
    const startHour = startDate.getHours();
    const startMinute = startDate.getMinutes();
    const cronExpression = `${startMinute} ${startHour} ${startDayOfMonth} * *`;
    return cronExpression;
  }

  getCreateAnnualFromStartDate(startDate: Date): string {
    const startMonth = startDate.getMonth() + 1;
    const startDayOfMonth = startDate.getDate();
    const startHour = startDate.getHours();
    const startMinute = startDate.getMinutes();
    const cronExpression = `${startMinute} ${startHour} ${startDayOfMonth} ${startMonth} *`;
    return cronExpression;
  }

推荐阅读