数据来源于香港天文台,请遵守相关协议使用。
提供1901年至2100年的公历和农历日期对照,包含二十四节气、星期、十二生肖数据。
JSON文件由 database/origin 中的文本文件解析转换来的,转换之后的数据我没有仔细校验,如果发现数据不准确,可以自己对原文件进行转换。
<main id="content"></main>
<section id="json"></section>
<script src="../dist/index.esm.js" type="module"></script>
<script type="module">
import { Database } from '../dist/index.esm.js';
const database = new Database();
database.load('../database/all.bin')
.then(data => {
const now = new Date();
const date = database.getCompoundDate(now.getFullYear(), now.getMonth() + 1, now.getDate());
document.querySelector('#content').innerHTML = `今天是:${ date.toString() }`;
document.querySelector('#json').innerHTML = `<pre>${ JSON.stringify(date, null, 2) }</pre>`;
});
</script>
包含1901年到2100年的数据,使用zlib压缩,大小为639KB。
- database/json
- database/json/min
JSON数据以每年为一个独立的文件存储,内容格式为:
{
// 星期
day: string,
// 公历日期
gregorian: {
year: number,
month: number,
date: number,
},
// 农历日期
lunar: {
year: string,
month: string,
date: string,
// 是否閏月
leapMonth: boolean,
},
// 生肖
zodiac: string,
// 节气
solarTerm: string,
}
使用zlib
压缩的json文件,适合在浏览器端使用,体积较小,单个文件大约3.6KB。
浏览器端解压可使用pako
库,
例子请查看:browser-unzip.html