小编典典

Moment JS - 检查日期是今天还是将来

all

我试图用来momentjs检查给定的日期是今天还是将来。

这是我到目前为止所拥有的:

<script type="text/javascript" src="http://momentjs.com/downloads/moment.min.js"></script>
<script type="text/javascript">

var SpecialToDate = '31/01/2014'; // DD/MM/YYYY

var SpecialTo = moment(SpecialToDate, "DD/MM/YYYY");
if (moment().diff(SpecialTo) > 0) {
    alert('date is today or in future');
} else {
    alert('date is in the past');
}

</script>

该代码将我的日期(2014 年 1 月 31 日)评估为过去的日期。

知道我做错了什么吗?


阅读 121

收藏
2022-04-22

共1个答案

小编典典

阅读文档后:http:
//momentjs.com/docs/#/displaying/difference/,您必须将diff函数视为减号运算符。

                   // today < future (31/01/2014)
today.diff(future) // today - future < 0
future.diff(today) // future - today > 0

因此,你必须 扭转 你的状况。

如果你想检查一切是否正常,你可以在函数中添加一个额外的参数:

moment().diff(SpecialTo, 'days') // -8 (days)
2022-04-22