如何在Moment.js中区分一个月和一个月的第一天

时间:2015-04-27 13:06:50

标签: javascript momentjs

我正在从CSV解析日期,并可选择添加格式。

有时日期是日期,将作为时间点处理。有时日期是片段,描述一年,一个月等等。这将作为范围处理。

请参阅以下代码:

var a = moment('Jun 2014');
var b = moment('01-06-2014');

//output
a.toDate(); // Sun Jun 01 2014 00:00:00 GMT+0200 (CEST)
b.toDate(); // Sun Jun 01 2014 00:00:00 GMT+0200 (CEST)

我理解错过的一天将被解释为第0天(或1),但是我有什么方法可以区分6月1日和解析日期的6月份?

1 个答案:

答案 0 :(得分:0)

也许最简单的方法是将日期解析包装在另一个将元数据附加到结果的函数中。这是一个粗略的想法:

function parseDate(d) {
  var ret = moment(d);

  if(d.indexOf('-') === -1) {
    ret.monthOnly = true;
  }

  return ret;
}