Skip to content

包含 T 和 Z 的日期时间字符串格式

ECMAScript 基于 ISO 8601 扩展格式的简化定义了日期时间的字符串交换格式。

格式为:YYYY-MM-DDTHH:mm:ss.sssZ

内容描述
YYYY公历中 0000 到 9999 年的十进制数字。
-“-”(连字符)在字符串中出现两次,分隔年、月、日。
MM一年中的月份,从 01(一月)到 12(十二月)。
DD月份中的天数,从 01(第一天)到 31(最后一天)。
T表示字符串中的时间部分的开始。
HH自午夜以来经过的完整小时数,从 00 到 24 的两位十进制数字。
:“:”(冒号)在字符串中出现两次,分隔时、分、秒。
mm当前小时经过的完整分钟数,从 00 到 59 的两位十进制数字。
ss当前分钟经过的完整秒数,从 00 到 59 的两位十进制数字。
.“.”(点)在字符串中出现一次,分隔秒、毫秒。
sss当前秒经过的完整毫秒数,从 000 到 999 的三位十进制数字。
Z时区,使用 “Z” 表示 UTC,或使用 “+”、“-”,并在后方跟随 HH:mm
格式的时间表达式表示偏移量(例如 +0800 表示 +8 小时)。

所有数字必须为十进制形式。

如果 MM​ 或 DD 字段不存在,则使用默认值 “01”。

如果 HH​、mm​ 或 ss 字段不存在,则使用默认值 “00”。

sss 字段不存在,则使用默认值 “000”。

如果没有指定时区,则把字符串作为本地时间进行解析。

由于每天都以午夜开始和结束,所以可以在时间表达式中使用 00:00​ 和 24:00​ 来区分相同时间点的两个午夜。
也就是说,字符串 1995-02-04T24:00​ 和 1995-02-05T00:00 可以表示完全相同的时间点。

字符串中可以只包含日期:

YYYY
YYYY-MM
YYYY-MM-DD

字符串中可以只包含时间:

THH:mm
THH:mm:ss
THH:mm:ss.sss

参考资料: