基于suncalc实现计算太阳日出日落时间。
SunCalc 是一个 BSD 授权的小型 JavaScript 库,用于计算给定位置和时间的太阳位置、阳光相位(日出、日落、黄昏等的时间)、月亮位置和月亮相位。
引入suncalc.js
<script src="suncalc.js"></script>
基本用法举例:
/**
date 日期
lat 纬度
lng 经度
**/
// 计算日出日落时间
var times = SunCalc.getTimes(date, lat, lng);
//日出时间
var sunriseStr = formatTime(times.sunrise);
//日落时间
var sunsetStr = formatTime(times.sunset);
//太阳当前位置
var sunPosition = SunCalc.getPosition(date, lat, lng);
//太阳当前高度
var sunAltitude = sunPosition.altitude;
//太阳当前方位角
var sunAzimuth = sunPosition.azimuth;
//太阳日出时方位角
var sunriseAzimuth = SunCalc.getPosition(times.sunrise, lat, lng).azimuth;
//太阳日落时方位角
var sunsetAzimuth = SunCalc.getPosition(times.sunset, lat, lng).azimuth;
找到一个应用案例,可以参考:https://www.qvdv.net/tools/qvdv-sunrise.html