@@ -29,16 +29,16 @@ export interface LunarDateDetail {
* LUNAR_INFO 数组值的计算原理:
*
* 每个值使用 16 进制表示,包括以下部分:
- * 1. 前 4 位:表示闰月的月份,如果没有闰月为 0。
- * 2. 中间 12 位:表示 1 到 12 月的大小月,1 为大月(30 天),0 为小月(29 天)。
- * 3. 后 4 位:表示闰月的天数,如果没有闰月为 0。
- *
+ *
* 以 `0x04bd8` 为例:
* - `0x` 表示这是一个 16 进制数。
* - `04bd8` 是具体的 16 进制值。
* 转换为二进制后,`04bd8` 为 `0000 0100 1011 1101 1000`:
- * 1. 前 4 位 `0000`:表示该年份没有闰月(若有闰月,该值为闰月的月份)。
+ * 1. 前 4 位 `0000`:表示闰月的天数。
+ * - `0` 为 29天
+ * - `1` 为 30天
+ * - 如果后 4 位为 `0000`(即没有闰月),则这一部分不使用。
* 2. 中间 12 位 `0100 1011 1101`:从左到右分别表示 1 到 12 月的天数。`1` 表示大月(30 天),`0` 表示小月(29 天)。
* - `0`(1月):小月(29 天)
* - `1`(2月):大月(30 天)
@@ -52,7 +52,7 @@ export interface LunarDateDetail {
* - `1`(10月):大月(30 天)
* - `0`(11月):小月(29 天)
* - `0`(12月):小月(29 天)
- * 3. 后 4 位 `1000`:表示闰月的天数。如果前 4 位为 `0000`(即没有闰月),则这一部分不使用。
+ * 3. 后 4 位 `1000`:表示该年份闰月的月份,`0000` 表示该年没有闰月。
*/
export const LUNAR_INFO: number[] = [
0x04bd8, 0x04ae0, 0x0a570, 0x054d5, 0x0d260, 0x0d950, 0x16554, 0x056a0, 0x09ad0, 0x055d2, //1900-1909