12

我需要获取我以特定格式收到的moment.js ( http://momentjs.com/ ) 的过去日期:

moment('31.10.2013', 'dd.mm.yy');

这给我一个奇怪的回应,我在_d选项中看到当前日期:

// returns
_a: Array[7]
_d: Wed Nov 06 2013 00:10:00 GMT+0200 (EET)
_f: "dd.mm.yy"
_i: "26.10.2013"
_isUTC: false
_l: undefined
_pf: Object
_strict: undefined

我认为这是我进行格式化时的问题:

moment('31.10.2013', 'dd.mm.yy').format('YYYY/MM/DD');
// returns current date (why??!)
// "2013/11/06"

那么这里出了什么问题,我可以格式化过去的日期吗?

4

1 回答 1

30

起初我以为是格式,但实际上是格式,小写在输入和输出中都意味着与大写不同的东西。

moment('31.10.2013', 'DD.MM.YYYY').format('YYYY/MM/DD')
>> "2013/10/31"

moment('31.10.2013', 'dd.mm.yyyy').format('YYYY/MM/DD')
>> "2013/11/06"

所以修复你的输入掩码,而不是格式。

于 2013-11-06T08:43:37.470 回答