【发布时间】:2014-01-09 02:34:01
【问题描述】:
对于 oData Rest 服务,我使用 Moment.js 从 Unix 时间戳创建日期,我想忽略时区。 我的日期是“2013-12-24”,在 Unix 秒内是 1387839600。
使用
moment("2013-12-24", "YYYY-MM-DD").toISOString()
结果为“2013-12-23T23:00:00.000Z”,因为我住在 GMT+1。 通过使用
moment.utc("2013-12-24", "YYYY-MM-DD").toISOString()
我得到“2013-12-24T00:00:00.000Z”,这正是我想要的。我可以简单地在最后删除祖鲁时间的“Z”。
但我的日期的真实表示是一个 Unix 时间戳。所以如果我这样做了
moment.utc(1387839600, "X").toISOString()
我总是得到“2013-12-23T23:00:00.000Z”,但我希望它返回“2013-12-24T00:00:00.000Z”。
我的错在哪里? 感谢您的帮助!
【问题讨论】:
-
使用 moment.utc(moment("1387839600", "X").format("L"), "DD.MM.YYYY").toISOString() 有效,但这似乎相当复杂!?
-
或者只是
moment(1387839600, 'X').format('YYYY-MM-DDT00:00:00.000')? -
感谢@robertklep,我愿意接受您的评论作为对我问题的回答,但很遗憾,我无法将您的评论提升为完整答案...
标签: javascript date datetime momentjs