例如,
const d = new Date("2012-08-20T15:00:00-07:00");
d
是带有时区偏移量为 07:00
的 UTC 时间。它是否仍需要像这样的 Z
:2012-08-20T15:00:00-07:00Z
?这样正确吗?
如果我使用 JavaScript 中的 Date.parse()
方法解析带有 Z
的字符串,它会抛出错误。不确定哪里出了问题!
例如,
const d = new Date("2012-08-20T15:00:00-07:00");
d
是带有时区偏移量为 07:00
的 UTC 时间。它是否仍需要像这样的 Z
:2012-08-20T15:00:00-07:00Z
?这样正确吗?
如果我使用 JavaScript 中的 Date.parse()
方法解析带有 Z
的字符串,它会抛出错误。不确定哪里出了问题!
不应该在时间偏移量中包含"Z"。
来自rfc3339:
Z A suffix which, when applied to a time, denotes a UTC
offset of 00:00; often spoken "Zulu" from the ICAO
phonetic alphabet representation of the letter "Z".
"Z"代表零时区偏移量,因此将其与显式偏移量(尤其是非零偏移量)一起使用没有任何意义。
引用 W3C有关日期和时间格式的注释:
YYYY-MM-DDThh:mm:ss.sTZD (例如1997-07-16T19:20:30.45+01:00)
其中:
[...]
请注意上面的 or 单词。您要么指定时区偏移量,要么使用TZD = time zone designator (Z or +hh:mm or -hh:mm)
Z
表示 Zulu(无偏移量)。