微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ISO 格式“+00:00”和“Z”之间的区别?

如何解决ISO 格式“+00:00”和“Z”之间的区别?

这种日期格式有什么区别:

"2021-01-01T00:00:00.000Z"

还有这个:

"2021-01-01T00:00:00+00:00"

它们都是有效的 ISO 格式吗?当我在 JavaScript 中调用 new Date().toISOString() 时,我得到第一个

出于某种原因,我无法就此找到明确的答案。

解决方法

来自Wikipedia

零偏移量除了具有特殊表示形式“Z”外,还可以用数字表示为“+00:00”、“+0000”或“+00”。

,

ECMA-262 定义了一个由 toISOString 生成的 "string interchange format",也必须由内置解析器解析。它指出:

Z 是 UTC 偏移表示,指定为“Z”(对于没有偏移的 UTC)或“+”或“-”后跟一个偏移量时间表达式 HH:mm(分别表示当地时间早于或晚于 UTC)

因此,当 toISOString 生成“Z”时,解析器也会接受“+00:00”和“-00:00”。任何其他格式的正确解析取决于实现(因此不可靠)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。