今天来分享一个超级强大的日历工具库:lunar,它支持阳历、阴历、佛历和道历等,基本满足大多数日历需求!
概述
lunar 是一个支持阳历、阴历、佛历和道历的日历工具库,其不依赖第三方,支持阳历、阴历、佛历、道历、儒略日的相互转换,还支持星座、干支、生肖、节气、节日、彭祖百忌、每日宜忌、吉神宜趋、凶煞宜忌、吉神方位、冲煞、纳音、星宿、八字、五行、十神、建除十二值星、青龙名堂等十二神、黄道日及吉凶等。
lunar 提供了多种开发语言的版本,包括 JavaScript、TypeScript、Flutter、Php、Java、swift、c#、Python、Go。
案例
下面来看一些简单的案例:
- 老黄历
- 年历
- 仿百度搜索月历
- 月历
- 农历月历
- 周历
- 佛历月历
- 道历月历
- 摸鱼通知
基本使用
这个工具库只提供了一些 API,并没有提供现成的日历组件。
比如,阴历支持获取年月日、时辰、星期、节日、干支、禄、生肖、节气、物候、数九、三伏、六曜、二十八星宿、七政(七曜)、 四宫、四神兽、 彭祖百忌、八卦方位、吉神方位、胎神方位、太岁方位、冲煞、纳音、八字、十神、旬、旬空(空亡)、建除十二值星、十二天神、每日宜忌、时辰宜忌、吉神凶煞、月相、九星、日期推移、转阳历、转佛历、转道历。
代码语言:javascript复制
// 二十八宿
const d = Lunar.fromDate(new Date());
console.log(d.getXiu());
console.log(d.getAnimal());
console.log(d.getXiuLuck());
console.log(d.getXiuSong());
// 输出结果
壁
獝
吉
壁星造作主增财,丝蚕大熟福滔天,奴婢自来人口进,开门放水出英贤,埋葬招财官品进,家中诸事乐陶然,婚姻吉利主贵子,早播名誉著祖鞭。
阳历支持获取年月日、儒略日、获取星期、是否闰年、节日、星座、日期推移、日期相减、日期比较、薪资比例、转阴历。
代码语言:javascript复制
// 年月日
var d = Solar.fromYmd(2016, 1, 1);
console.log(d);
// 年月日时分秒
d = Solar.fromYmdHms(2016, 1, 1, 20, 35, 0);
console.log(d);
// 日期
d = Solar.fromDate(new Date());
console.log(d.toFullString());
// 儒略日
d = Solar.fromJulianDay(2458960.5);
console.log(d.toFullString());
// 八字反推阳历
var l = Solar.fromBaZi('庚子', '辛巳', '庚午', '丙子');
for (var i=0, j=l.length; i < j; i ) {
d = l[i];
console.log(d.toFullString());
}
lunar 提供了很多 API,可以根据自己的需求选择性使用。
Github:https://github.com/6tail/lunar-javascript