CodeKitHub
简体中文
日常工具

日出日落计算器 — 任意日期任意地点

选择日期和城市——或者自己输入经纬度——即可得到日出时间、日落时间、太阳正午和全天昼长。计算采用 NOAA 太阳位置算法,完全在浏览器本地进行:不调用天气 API,也不获取你的位置。内置列表覆盖 50 多个全球主要城市并自带时区,夏令时自动处理。高纬度地区也处理正确:出现极昼或极夜时,工具会明确提示,而不是显示无意义的时间。

工具介绍

日出日落时间来自纯粹的几何学:地球自转、倾斜的地轴和你在地球上的位置。由于地轴倾角恒定、轨道已知,任意日期、任意坐标的太阳位置都可以用天文公式算出——不需要实测,也不需要天气数据。本工具实现的是 NOAA(美国国家海洋和大气管理局)太阳位置算法,也是大多数日出时刻表背后的数学。

按照惯例,日出和日落指太阳圆盘上边缘越过地平线的时刻,并已计入大气折射的影响——光线的弯曲让我们在太阳几何位置还在地平线下约 0.83° 时就能看到它。太阳正午是太阳在天空中最高的时刻,它几乎从不正好等于钟表的 12:00,因为时区覆盖很宽的经度带,夏令时还会再拨快一小时。

为什么使用它?

  • 内置 50 多个全球主要城市,时区正确,夏令时自动处理。
  • 手动模式:输入任意纬度、经度和 UTC 时差,不在列表里的地点也能算。
  • 一屏显示日出、日落、太阳正午和昼长。
  • 正确处理高纬度的极昼极夜,给出明确提示而不是错误数值。
  • 无 API、无需位置权限——NOAA 算法完全在浏览器本地运行。

使用方法

  1. 选择日期——默认已选今天。
  2. 从列表选择城市,或勾选手动选项输入纬度、经度和 UTC 时差。
  3. 点击计算按钮。
  4. 查看日出、正午、日落和昼长结果,均按所选地点的当地时间显示。

示例

输入

6 月 21 日,伊斯坦布尔(北纬 41.01°,东经 28.98°)

输出

日出 05:35,日落 20:28,昼长约 14 小时 53 分钟

6 月 21 日是夏至——北半球一年中最长的一天。同一天在悉尼则是一年中最短的一天。

昼长在一年中如何变化

  • 在赤道,昼长几乎不变——全年都在 12 小时左右。
  • 在纬度 40°(马德里、纽约、北京),冬季约 9 小时,夏季约 15 小时。
  • 在纬度 60°(圣彼得堡、奥斯陆),范围扩大到约 6 到 18.5 小时,仲夏前后暮光很长。
  • 极圈以内,仲夏出现极昼(太阳 24 小时不落),隆冬出现极夜。
  • 变化最快的是 3 月和 9 月的春分秋分前后——中纬度地区每天比前一天长或短 2–3 分钟。

相关日期时间工具

想倒数距离夏至或其他日期还有几天?日期倒计时计算器给出精确天数。日期计算器可以做日期加减,并把区间拆分为年、月、天。

如果日照影响你的睡眠,睡眠计算器可以按 90 分钟睡眠周期找出最佳入睡时间。

日期倒计时计算器 · 日期计算器 · 睡眠计算器 · 时间戳转换器

常见问题

为什么和天气 App 显示的时间差几分钟?

几分钟的差异是正常的,主要来自三个方面。一是定义:正规来源都会计入大气折射,但折射量随气温气压变化,任何公式都无法提前知道。二是海拔:在山上或高楼上,地平线更低,日出更早、日落更晚——海拔每高 1.5 公里约差 1 分钟。三是精确位置:一座城市横跨数公里,东西方向每公里就差几秒。不同来源之间相差 1–3 分钟完全在预期之内。

什么是太阳正午?为什么不是 12:00?

太阳正午是太阳经过你所在子午线的时刻——一天中太阳最高的时候。钟表的正午很少与之重合:一个时区覆盖很宽的经度带却共用一个时间;夏令时把时钟整整拨快一小时;均时差(地球椭圆轨道和地轴倾斜造成)还会带来最多 ±16 分钟的季节性摆动。夏季实行夏令时的地区,太阳正午通常出现在当地时间 12:30 到 13:30 之间。

极昼和极夜是怎么处理的?

在极圈(纬度 66.6°)以内,夏季太阳数周不落,冬季数周不升。在数学上,那一天的日出方程无解——太阳不会越过地平线。工具会检测这种情况并给出明确提示:极昼(太阳不落,昼长 24 小时)或极夜(太阳不升),而不是显示错误或不可能的时间。

计算考虑夏令时了吗?

内置城市考虑了。每个城市都带有 IANA 时区名(如 Europe/Paris),浏览器的时区数据库会把算出的 UTC 时刻转换为正确的当地时间,包括所选日期生效的夏令时规则。手动坐标模式下 UTC 时差由你自己填写,需要填入该日期实际适用的时差。

NOAA 算法有多精确?

在大约 1800 到 2100 年之间,NOAA 太阳方程对太阳位置的误差远小于 1 分钟,中纬度地区的日出日落时间通常精确到 1 分钟以内。接近极地时精度下降——极圈附近太阳以非常平缓的角度穿过地平线,微小的角度误差会放大成数分钟的时间误差。对日常用途而言,结果绰绰有余。

我的位置或数据会被存储吗?

不会。工具从不请求设备定位权限。你输入的日期、城市或坐标由浏览器中的 JavaScript 处理,不会发送到服务器,也不会被存储或记录。

相关工具