在node-cron中获取下一个cron作业时间
在node-cron中,如何获得下一个cron作业的时间?例如cronJob.nextCronJob().time或其他属性。文档中没有显示这一点的方法。
解决方案
我不知道有什么方法可以使用node-cron模块来获得它。但是,您可以使用cron模块,使用cronJob.nextDates()函数完成此操作,如下所示:
const CronJob = require("cron").CronJob;
const cronJob = new CronJob(
"*/30 * * * * *",
() => {
console.log("Timestamp: ", new Date());
},
null,
true
);
setInterval(() => {
console.log("Next job time:", cronJob.nextDates().toISOString());
}, 5000);
如果您必须使用node-cron模块,您可以查看cron-parser,它将解析cron表达式并为您提供下一次运行时,例如
const parser = require('cron-parser');
const cronExpression = "*/30 * * * * *";
const interval = parser.parseExpression(cronExpression);
console.log('Next run:', interval.next().toISOString());
相关文章