时刻js格式日期

时间:2016-01-23 19:35:14

标签: javascript date momentjs

我从db获得以下日期格式 2016 1 24 12:00am

我想把它作为时刻对象,所以我可以用它做一些处理

我尝试了类似下面的内容

m = moment('2016 1 24 12:00am').format('YYYY M D ha');

它说invalid date

如何解析这种类型的字符串?

我将从不同的变量获得年,月,日期和时间,我可以构造像2016-1-24-12:00am这样的字符串仍然会抛出错误

enter image description here

3 个答案:

答案 0 :(得分:5)

您必须将格式作为第二个参数传递,以将字符串转换为时刻对象

m = moment('2016 1 24 12:00am', 'YYYY M D ha');

我认为这就是你要找的东西。

答案 1 :(得分:2)

问题是数据库返回的日期是不可解析的。 Moment.js允许您使用自定义日期创建一个时刻对象,但您必须将该日期的格式指定为第二个参数,例如。

moment("12-25-1995", "MM-DD-YYYY");

http://momentjs.com/docs/#/parsing/string-format

答案 2 :(得分:2)

在Stackoverflow上查看此question

date = moment(new Date())
datetime.html(date.format('dddd, MMMM Do YYYY, h:mm:ss a'));

来自上述问题的JSFiddle demo。它有一个很好的答案和工作。