带昼夜地图的免费世界时钟

这个在线世界时钟把各个城市的当前时间显示在一张实时世界地图上。把家乡、公司、海外同事或亲友所在的城市加进来,就能看到每个城市现在几点,以及那里是白天还是晚上。

免费使用,不用注册,不用下载,页面上也没有广告。卡片上的时间每秒刷新一次,地图上的昼夜分界每分钟更新一次。你加过的城市会保存在浏览器里,下次打开还在。

核心功能

  • 实时世界地图:用 D3.js 绘制的矢量世界地图,陆地颜色跟着你选的主题变。地图上的夜晚一侧根据太阳直射点实时计算,哪里已经天黑,看地图就知道。
  • 580 多个城市:全世界目前在用的 37 种 UTC 时差都有对应的城市,连 UTC+5:30(加尔各答)、UTC+9:30(阿德莱德)、UTC+12:45(查塔姆岛)这类少见的时差也包括在内。
  • 昼夜卡片:当地太阳还没落山时卡片是浅色,天黑后变成深色。不用细看数字,看颜色就知道那边是白天还是晚上。
  • 卡片和地图联动:鼠标移到卡片上,地图上对应的标记点会亮起,并显示城市名和时间。点一下卡片,标记点会一直亮着。
  • 拖动排序:在电脑上可以把卡片拖到任意位置,排好的顺序会自动保存。
  • 自动处理夏令时:每个城市都对应一个 IANA 时区(比如 America/New_York),夏令时由浏览器自动切换,不用每年手动改两次。
  • 电脑、手机都能用:电脑上可以用完整的地图和拖动排序。手机上地图只能看、不能点,搜索框在卡片列表上方,卡片排成一列,删除按钮一直显示。
  • 8 种主题颜色:深色、浅色、红色、青色、蓝色、紫色、绿色、石板灰。换主题时,地图上陆地和海洋的颜色也会跟着变。
  • 断网后继续运行:页面加载完以后,就算断网,时钟也会继续走,地图上的夜晚一侧也会继续更新。

世界时钟怎么用

第 1 步:添加城市

在电脑上,搜索框在地图左上角;在手机上,搜索框在卡片上方。输入城市的中文名、英文名或国家名,下拉列表里会出现匹配的城市,点一下就能添加。也可以只用键盘:第一条结果默认已选中,直接按 Enter 就能添加,用上下方向键可以换成别的结果。

第 2 步:查看当地时间

每添加一个城市,地图上就多一个标记点,下面多一张卡片。卡片上有城市名、国家、当地时间和日期。浅色卡片表示当地是白天,深色卡片表示当地已经天黑。

第 3 步:在地图上找到城市

鼠标移到某张卡片上,地图上对应的标记点会亮起,旁边显示城市名和时间。直接把鼠标移到地图上的标记点也一样。点击卡片,标记点会一直亮着,页面也会滚回地图。再点另一张卡片,高亮就换到那个城市;点卡片以外的任何地方,包括地图本身,高亮就会取消。

第 4 步:拖动排序

在电脑上用鼠标按住卡片,拖到想放的位置后松开,新的顺序马上就会保存。

第 5 步:移除城市

鼠标移到卡片上,左上角会出现 × 按钮,点一下就能把这张卡片和地图上的标记点一起删掉。手机上 × 按钮一直显示。

这些时候用得上世界时钟

远程办公和跨国团队

团队成员分布在不同国家时,发消息前先看一眼对方那边几点,就不会在别人凌晨 3 点打扰人家。把同事所在的城市都加进来,谁现在是上班时间,看卡片就知道。

约跨国电话和视频会议

约海外客户或同事开会时,把双方的城市都加进来,两边现在几点、是白天还是晚上,放在一起看很清楚。比如北京下午 4 点的时候,伦敦才是早上 8、9 点,对方差不多刚上班。

海外的家人朋友

孩子在美国读书,父母在国内,想打个视频又怕吵醒对方?把两个城市都加进来,那边现在几点一看就知道,不用每次再算是差 12 个小时还是 13 个小时。

出差和旅行

出发前把目的地加进来,就能随时看到那边的时间,安排落地后的行程、给当地酒店打电话都更方便。

股市和外汇交易

很多交易所按当地时间公布开盘时间,比如东京证券交易所上午 9 点开盘。把纽约、伦敦、东京这些城市加进来,各个市场所在地的当前时间都能直接看到,夏令时也不用自己换算。

体育比赛、电竞和直播

欧洲足球比赛、海外电竞赛事和直播常常只公布当地的开始时间。比如一场比赛在柏林晚上 9 点开始,把柏林和北京都加进来,看两张卡片现在差几个小时,就能算出北京时间几点开赛。

世界时钟的工作原理

  • 地图是用 D3.js 根据各国边界的 GeoJSON 文件画出的一张 SVG 图。投影方式是等距圆柱投影(经纬度直接展开成平面),所以经度和纬度可以直接换算成坐标,标记点很容易放准。
  • 地图的夜晚一侧,是以反日点(地球上与太阳直射点正好相对的那一点)为中心、半径 90° 的圆。反日点的位置用太阳赤纬和均时差两个标准公式,加上你电脑的 UTC 时间算出来,每分钟更新一次。
  • 每个城市都对应一个 IANA 时区。浏览器用 Intl.DateTimeFormat({ timeZone: ... }) 把 UTC 时间换算成当地时间,所以夏令时规则来自浏览器自带的时区数据库,浏览器保持更新,规则就是最新的。
  • 选好的城市、排列顺序和主题都存在浏览器的 localStorage 里,城市列表不会上传到任何服务器。

几个小技巧

  • 把自己所在的城市拖到第一位,其他城市的时间就都以它为参照,比较起来更顺手。
  • 按地区排列城市,比如亚洲的放在一起,然后是欧洲、美洲,找起来更快。
  • 开会共享屏幕时,点一下某张卡片,地图上的标记点会一直亮着,对方马上知道你说的是哪个城市。
  • 地图上的暗色区域就是此刻处在夜晚的半个地球,它的边缘是日出和日落的分界线。标记点如果刚好落在暗色区域的边缘以内,说明那里要么刚日落,要么快日出了。
  • 添加城市前先点一下空的搜索框,会列出新加坡、多伦多等热门城市,点一下就能添加,不用打字。

常见问题

在线世界时钟是免费的吗?

是的,完全免费。不用注册,不用下载,也没有付费功能。

世界时钟上各个城市的时间是怎么来的?

浏览器先读取你电脑上的时间,再按每个城市所在的时区(比如 Asia/Shanghai、America/New_York)换算成当地时间。夏令时也由浏览器自动处理。

为什么有些卡片是浅色、有些是深色?

卡片颜色看的是这个城市现在太阳有没有落山,不是固定的钟点。页面会算出太阳此刻直射的位置,地图上的夜晚一侧也是用同样的方法画出来的,所以夏天的柏林到了晚上 8 点,卡片可能还是浅色。

最多能添加多少个城市?

最多可以同时添加 30 个城市。城市库里有 580 多个城市,全世界在用的每一种 UTC 时差都有,包括加德满都的 UTC+5:45 这种差 45 分钟的时区。

关闭浏览器后,我添加的城市还在吗?

还在。选好的城市、顺序和主题都保存在浏览器的 localStorage 里,关掉浏览器也不会丢。清除浏览数据会把它们删掉,换一台设备也不会同步过去。

可以拖动卡片来调整顺序吗?

可以,在电脑上用鼠标拖就行,新顺序会自动保存。手机和其他触屏设备不支持拖动排序。

世界时钟可以离线使用吗?

页面加载完以后可以。地图、城市列表和时间计算都已经在页面里,断网后时钟照样走。只是断网时刷新页面就打不开了,需要重新联网。

世界时钟的时间准吗?

跟你设备的系统时间一样准。现在的电脑和手机大多会自动联网校准时间,只要设备时间是准的,这里显示的时间就是准的。