我正在尝试使用 momentjs 以下面的方式将系统日期转换为 ISO 格式
2015-02-17T19:05:00.000Z
但是,我无法找到我需要使用的参数来以我想要的格式获取它。我试过下面的一段代码..
moment().format("YYYY-MM-DD HH:mm Z");
我得到的输出为 2015-02-02 17:24+05:30。
如何获取 2015-02-02T17:24:00.000Z
最佳答案
这在 docs 中有很好的介绍.但是,它们很长,所以这里是具体细节:
出于某种原因,momentjs 对 ISO 8601 的定义不同于 ECMAScript一个,所以它不是内置的。格式是 YYYY-MM-DDTHH:mm:ss.sssZ
并且它必须是 UTC(Z
表示这个) .
所以,moment().utc()
确保时区正确。
然后 format它:
moment().utc().format("YYYY-MM-DDTHH:mm:ss.SSS[Z]");
// 2015-02-02T21:38:04.092Z
Z
是 escaped with square brackets .我们可以安全地执行此操作,因为我们强制使用 UTC。
其余字符根据 format table 表示各种时间元素.
您也可以像 RobG 所说的那样使用 native 日期对象。如果您从片刻开始:
moment().toDate().toISOString( )
// 2015-02-02T21:40:06.395Z
关于javascript - 使用 momentjs 将系统日期转换为 ISO 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28277272/