Moment.js,日期(MM-YYYY)正常比较不正确

时间:2017-02-02 12:30:07

标签: javascript date comparison momentjs

我在我的应用中生成动态交易数据表。在这张表中,每个月都应该分开,并且应该在月之后添加一行。

我的版本一直有效,直到一年变了。 2016年12月和2017年1月没有分开,因为比较没有正确。

简化我执行以下操作:

var dateNow = moment("2016-12-21T13:14:55").format("MM-YYYY");
var lastDate = moment("2017-01-13T14:23:12").format("MM-YYYY");

if(lastDate > dateNow) // This is false
{
  // This isn't executed
}

为什么比较错误?它适用于所有其他月份。

我使用的moment.js版本是2.7.0。

1 个答案:

答案 0 :(得分:1)

试试这个,

var before = "12-2016";
var after = "01-2017"

var beforeInMoment = moment.utc(before, "MM-YYYY");
var afterInMoment = moment.utc(after, "MM-YYYY");

if(beforeInMoment.isBefore(afterInMoment)){
  console.log('Yes');
}