【发布时间】:2021-05-30 18:00:42
【问题描述】:
cronjob 时间语法,例如 "* * * * * *" 后跟 cron npm
我想将时间从 "2017-05-09T01:30:00.123Z" 转换为 cron 作业时间格式。有库或方法可以实现吗?
【问题讨论】:
cronjob 时间语法,例如 "* * * * * *" 后跟 cron npm
我想将时间从 "2017-05-09T01:30:00.123Z" 转换为 cron 作业时间格式。有库或方法可以实现吗?
【问题讨论】:
我不知道是否有任何图书馆。但是您可以使用简单的日期函数来简单地实现它。
var date=new Date("2017-05-09T01:30:00.123Z");
var mins=date.getMinutes();
//mins variable for the 1st * and so on
var secs=date.getSeconds();
var dayofmonth=date.getDate();
var month=date.getMonth();
var dayofweek=date.getDay();
然后您可以构建一个字符串并在 cron 模块中使用这些值。
【讨论】:
const dateToCron = (date) => {
const minutes = date.getMinutes();
const hours = date.getHours();
const days = date.getDate();
const months = date.getMonth() + 1;
const dayOfWeek = date.getDay();
return `${minutes} ${hours} ${days} ${months} ${dayOfWeek}`;
};
const dateText = '2017-05-09T01:30:00.123Z';
const date = new Date(dateText);
const cron = dateToCron(date);
console.log(cron); //30 5 9 5 2
仅供参考,您提到 "* * * * * *" 是 cron 的语法/格式,这是不正确的。正确的格式由 5 个用空格分隔的值(而不是 6 个值)组成。
【讨论】: