momentjs:尝试使用 moment() 获取当前日期时获取无效日期

momentjs: Get invalid date when trying to get current date with moment()

您好,我在应用程序中使用 firefox 和 CoffeeScript,我想使用默认方法 moment() 获取 momentjs 的当前日期,但是当我调试代码时,我看到 invalid Date,这很奇怪,这是我的代码:

questionStarts = 
    started_at: moment()
    running: true

然后在我的代码中创建另一个对象并添加 属性

answer = {}
answer.started_at = questionStarts.started_at

但是当我检查 answer.started_at 我回来了 Invalid date 有什么想法吗?

Moment 有一个用于奇怪日期的备用构造函数。由于我在您的代码中看不到 answer.started_at 的值,因此我只能猜测如何解决您的问题。

考虑一些奇怪的日期格式,例如 08.16.2015 00:00:00。试图从中构造一个 moment 对象将给出与您相同的错误,Invalid date。如果您尝试像这样构建我的示例,就会发生这种情况:

//this doesn't work, throws Invalid date message
var ex = moment('08.16.2015 00:00:00');

因此,为了解决我的问题,我提供了另一个构造函数,它通知 Moment 奇怪的日期格式。

//this does work, however
var ex = moment('08.16.2015 00:00:00', 'MM.DD.YYYY hh:mm:ss');

现在,我可以使用 ex 作为典型的 moment 对象,利用 moment 的其他方法,例如 format() diff()isBetween().