时区转换

按 IANA 时区名换算,附跨时区会议对照表与 UTC 偏移。

这个工具把一个时间点同时摊在所有你关心的时区上:你给一个瞬间和一个基准时区,下面每个城市显示的是同一瞬间在自己钟面上的样子。换算全部走浏览器自带的 Intl.DateTimeFormat——把瞬间在目标时区拆成年月日时分秒,再与同一瞬间的 UTC 值相减得到偏移,因此夏令时、历史规则和半小时偏移都由操作系统的 IANA 时区数据库决定。表格每一节常显四列:城市、当地时分秒、UTC 偏移与「相对本机差」,星期、日历日与相对基准城市的日差、当地时区缩写、IANA 全名收在该行下面的「详细字段」折叠里,默认收起;表头 meta 一行给出三段:基准时区的带偏移 ISO、UTC 的 ISO、当前城市数。

本页不内置任何时区规则表,也不引入第三方库,更不预测未来时区规则的变更——用的是本机时区数据库,系统没更新时新规则就体现不出来。它刻意不做的事同样清楚:不做日期加减、区间天数、倒计时和 cron 解析,那些是本站的日期计算与 cron 工具;不解析你随手写的自然语言(「下周三」无效)。难点在反向换算——你给的墙上时间未必存在,空档与重复各有确定的处理方式,提示条会写明真正采用的瞬间。所有输入都留在浏览器内,不发往任何地方。

时区转换怎么用

  • 先定基准,再读表:时间输入 + 基准时区共同确定一个绝对瞬间:不带偏移的写法一律按基准时区解释,不会被当成 UTC。表头 meta 一行连给三段——基准时区的带偏移 ISO、同一瞬间的 UTC ISO、当前城市数,抄给同事就是这一行。「用当前时间」把输入填成现在,「恢复默认城市」把清单退回默认那几区。
  • 增删对照行:两条路:点地区分段(基准/中国/亚洲/欧洲/非洲/美洲/大洋洲)筛出城市 chip,点一下加、再点一下移除;或在「手输其它时区」里写 IANA 全名点「添加」或按回车。本机时区恒在第 1 行、没有移除按钮,点它对应的 chip 会提示「本机时区固定占第 1 行,不用添加」;重复添加提示「已在表里」,超过 24 个提示「最多 24 个城市,先移除一个」。名字不认识时只有那一行标红,其余行照常计算;基准时区改成新值时它作为一个普通城市追加进表,本机仍在第 1 位。改时间戳或换基准重绘后,你展开过的「详细字段」仍然开着。城市清单与本页的世界时钟共用浏览器 localStorage 的同一个键 kc-zones:在这里加减城市,世界时钟那页看到的是同一份列表,读写都包在 try/catch 里,隐私模式或配额满时页面照常工作只是这次不记忆,清单只在本机、不会上传;上限 24 个城市,本机时区固定占第 1 行并且不写进清单,所以它不参与移除。另外要注意,CST、EST 这类缩写在 tzdata 里有历史兼容链接,Intl 可能照单收下(CST 指向的是 America/Detroit,不是中国标准时间),所以本页推荐但无法禁止你写缩写,写全名最稳妥。
  • 核对跨日的会议:常显的「相对本机差」写同偏移、快 8 小时、慢 5 小时 30 分这三种说法,本机行是「—」,跨日标记(明天/昨天/前天/后天/N 天后)按本机所在的日历日判;想看相对基准城市差几天,展开该行的「详细字段」,那里同时列星期、日历日、时区缩写与 IANA 全名。纽约 11:59 与上海 23:59 是同一瞬间,但东京已经翻到次日——排跨太平洋的会时先按本机看这一列,再按基准核对一次。UTC 偏移一列含 +05:30、+05:45 这类半小时和一刻钟偏移,落在夏令时里另标一格。
  • 四种输入写法:输入可以是 2026-03-08 02:30 这样的墙上时间、2026年3月8日 2时30分 的中文写法、自带 Z 或 ±HH:MM 的 ISO 串,也可以是一串纯数字时间戳——位数不超过 10 位按秒算、11 位及以上按毫秒算,所以 9999999999 和 10000000000 这两个相邻的值会分别被读成 1976 年和 1970 年 4 月。
  • 基准时区怎么填:基准时区框可以直接输入任意 IANA 全名,浏览器自带的候选是 66 个常用城市并自动带上本机时区;不想翻下拉列表就点下面那片城市按钮——一排分段按钮按地区筛(基准/中国/亚洲/欧洲/非洲/美洲/大洋洲),筛出的城市各占一枚 chip,点一下加一行、再点一下移除,按压状态就是「在不在表里」。

常见问题

为什么北京时间总比 UTC 多 8 小时?

因为中国标准时间被定义为 UTC+8,这个 8 是偏移量而不是「快 8 小时」的相对概念:UTC 12:00 这一瞬间,北京钟面是 20:00。本页把偏移直接读自操作系统的时区数据库,所以 +05:30(加尔各答)、+05:45(加德满都)、+12:45 这类不常见的偏移也是准确的,而不是按整小时估算。

夏令时切换时消失的那一小时去哪了?

被跳过而不是消失:切换时刻本地时钟从 02:00 直接拨到 03:00,中间那一小时没有任何钟面对应,所以 02:30 这个值在该时区「不存在」。反过来,秋季回拨会让 01:30 出现两次。本页用候选偏移回代来区分这两种情况,并在提示条里写明采用的是哪一个瞬间,避免你以为算错了。

为什么我输入的 02:30 变成了 03:30?

那是空档后移规则:不存在的钟表值按切换前的偏移换算,等价于把时间整体向前推进空档的长度(纽约、伦敦是 60 分钟)。这不是 bug 也不是本机时区干扰,提示条里会同时列出你请求的值和实际采用的 ISO 瞬间。若你要的是切换前的那个真实时刻,请改写为 01:59:59 或 03:00 之后。

重复和空档是用什么算法判出来的?

先用墙上时间造一个种子瞬间,用它和前后各一天、各一周的采样点收集该时区附近出现过的偏移(一个时区一年最多切换两次,候选不会超过这几个),再逐个回代验证。恰好一个候选吻合就是普通时刻;两个都吻合是夏令时结束回拨造成的重复,本页取较早的那个并在提示条里写明;一个都不吻合就是这个钟表值落在空档里,按切换前的偏移整体后移,例如纽约 2026-03-08 02:30 会被处理成 03:30 EDT,提示条同时给出真正采用的 ISO 瞬间。

能换算多远的时间?

不接受公元 1 年以前和大约 275760 年以后的值,超出会明确报错而不是给出乱码。

对应功能编号 #44无需安装,手机端同样可用按 Ctrl + K 换工具