定时任务怎么对月末最后一天定时?cron和node-schedule貌似都不能吧?
 发布于 9 年前  作者 jiangliqin  6743 次预览  最后一次回复是 9 年前  来自 问答 

请教下各位一个问题: 我需要在每月月末最后一天的某个时刻启动一个定时任务,api中表示“day of month”范围是1-31,可是每月的天数不一样,通过什么方法可以兼顾到?

14 回复
winglight

考虑一下先取1号,再减24小时?

jiangliqin

@winglight 那回到上个月的月末了啊

eyblog

@jiangliqin 取下个月的1号减24小时不就是本月的最后一天吗

jiangliqin

@eyblog 尴尬死了,咋都是这个思路,大家有没有其他好点的方法?

captainblue2013

直接每月第一天就行了,

alsotang

一共就12个月,硬编码进去呗。。。

guosen88100300

取当前时间 加24小时,看看是不是1号。是的话就是最后一天 自豪地采用 CNodeJS ionic

jiangliqin

@alsotang 还有平年,闰年,让我一下子回到了小学。。

liuxufei

才12个月直接硬编码

jiangliqin

@liuxufei 我还是老实地用moment吧。。

linkenliu

每个月的月末其实就是当前月的最后一天,你取当前一个月的最后一天不行吗?

jiangliqin

@linkenliu 恩,用moment的startOf或endOf就好了

linkenliu

@jiangliqin 嗯嗯。对的,moment里面的算法全封装好了,我们其实什么事都没干,哈哈。