时刻js格式日期

moment js format date

我从数据库中得到以下格式的日期 2016 1 24 12:00am

我想把它作为 moment 对象,这样我就可以用它做一些处理

我试过类似下面的方法

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

它说 invalid date

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

我将从不同的变量中获取年、月、日和时间,我可以构建类似 2016-1-24-12:00am 的字符串,但它仍然会抛出错误

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

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

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

您必须将格式作为第二个参数传递才能将字符串转换为 moment 对象

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

我想这就是您要找的。

在 Whosebug 上查看此

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

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