我正在尝试将某一天/时间与当前时间进行比较,例如星期一09:00:00,看看我是否超过了这周的那个时间点。例如,如果现在是周一的05:00:00,则应返回true,但每次都返回false
var dayTime = Moment("Wednesday 17:00:00", "dddd HH:mm:ss");
var now = Moment(Moment.now(), "dddd HH:mm:ss");
console.log(Moment.utc(dayTime).isBefore(now)); //returns false all the time我发现了以下类似的问题,但在格式化时间后似乎没有解决问题。
Comparing two times with Moment JS
当我用诸如“星期三17:00:00”之类的字符串替换moment.now()时,它会返回预期的结果。
你知道我需要对moment.now()做些什么才能让它正常工作吗?
发布于 2016-06-14 09:21:09
Moment.now可以用作扩展点,但它实际上不是一个公共的API。要获取当前时间,只需调用moment()即可。请注意,所有moment调用都使用小写moment。
要查看您的日期和时间是否在当前时间之前,只需调用:
moment('01/01/2016', 'MM/DD/YYYY').isBefore(moment())您可以将有问题的日期和格式替换为您自己的日期和格式。
我看到你有一个日期格式,只包括星期几和时间。Moment将对此进行解析,但要注意行为可能不是您所期望的。当我解析你的日期时,我得到的是2015年12月30日星期三。具体是哪一天登陆将因地区而异。无论如何,我怀疑这不是你想要的。如果可能的话,我会得到年、月和日。
如果你想将这周的时间设置为星期三,可以使用.day()将这一天设置为这一天。例如:
moment().day(3).format()
"2016-06-15T20:19:55-05:00"https://stackoverflow.com/questions/37799624
复制相似问题