如何使用moment.js解析给定的日期字符串?

时间:2016-02-17 07:18:03

标签: javascript datetime momentjs

我希望使用moment.js格式化以下日期字符串,但它提供无效日期。

var dateString = '2/17/2016 12:16PM GMT-05:00';
var pattern = 'MM/DD/YYYY h:mma ZZ';
var testDate = moment(dateString).format(pattern); //Invalid Date

如何正确解析它还是有其他方法可以解决它?

编辑:回答

对于解析,我们必须使用

var testDate = moment(dateString, pattern, locale);

但是对于格式化,我们必须使用

var formattedDate = moment(testDate).format(pattern);

2 个答案:

答案 0 :(得分:6)

只需使用pattern作为矩函数的第二个参数

var testDate = moment(dateString, pattern)

更多信息,请参阅文档:http://momentjs.com/docs/#/parsing/string-format/

答案 1 :(得分:1)

你可以尝试一下:



var dateString = '2/17/2016 12:16PM GMT-05:00';
var pattern = 'MM/DD/YYYY h:mma ZZ';
var testDate = moment(dateString, "MM/DD/YYYY h:mmA -hh:mm").format(pattern);