1
0
mirror of synced 2026-04-16 05:18:43 +08:00

Compare commits

..

8 Commits

8 changed files with 204 additions and 176 deletions

25
CHANGELOG.md Normal file
View File

@@ -0,0 +1,25 @@
# Changelog
## [1.6.10] - 2024-02-06
1. 八字转阳历结果按时间先后排序,转换速度大幅提升。
## [1.6.11] - 2024-02-29
1. 修复节气当天获取下一节气仍为当前节气的问题。
2. 完善package.json中author信息。
3. 修复每日宜忌存在重复项的问题。
4. 修复八字转阳历存在遗漏的问题。
## [1.6.12] - 2024-03-17
1. 修复八字转阳历存在遗漏的问题。
## [1.6.13] - 2024-11-12
1. 新增2025年法定假日数据。
## [1.7.0] - 2025-02-12
1. 修复每日宜忌错别字。
2. 去除每日宜忌的重复项。
## [1.7.1] - 2025-03-05
1. 调整每日宜忌的默认流派。
2. 更新2018之后的△T参数。

View File

@@ -196,10 +196,9 @@ test('test19', () => {
solarList.forEach(solar => {
timeList.push(solar.toYmdHms());
})
expect(timeList).toStrictEqual(['1997-03-12 18:00:00', '1937-03-27 18:00:00']);
expect(timeList).toStrictEqual(['1937-03-27 18:00:00', '1997-03-12 18:00:00']);
});
test('test20', () => {
const lunar = Solar.fromYmdHms(2024, 1, 29, 9, 30, 0).getLunar();
const eightChar = lunar.getEightChar();
@@ -241,3 +240,12 @@ test('test27', () => {
const eightChar = lunar.getEightChar();
expect(eightChar.getShenGong()).toBe('乙巳');
});
test('test28', () => {
const solarList = Solar.fromBaZi('丁卯','丁未','甲申','乙丑', 1, 1900);
const timeList = [];
solarList.forEach(solar => {
timeList.push(solar.toYmdHms());
})
expect(timeList).toStrictEqual(['1987-08-03 02:00:00']);
});

View File

@@ -51,3 +51,12 @@ test('testRemove', () => {
holiday = HolidayUtil.getHoliday('2010-01-01');
expect(holiday).toBe(null);
});
test('test2025', () => {
let names = HolidayUtil.NAMES;
names[0] = '元旦节';
HolidayUtil.fix(names, '');
const holiday = HolidayUtil.getHoliday(2025, 1, 1);
expect(holiday.getName()).toBe('元旦节');
});

View File

@@ -93,7 +93,7 @@ test('test7', () => {
test('test8', () => {
const lunar = Lunar.fromYmd(2050, 12, 1);
expect(lunar.getJieQiTable()['DA_XUE'].toYmdHms()).toBe('2050-12-07 06:41:13');
expect(lunar.getJieQiTable()['DA_XUE'].toYmdHms()).toBe('2050-12-07 06:40:53');
});
test('test9', () => {
@@ -106,5 +106,11 @@ test('test9', () => {
test('test10', () => {
const lunar = Lunar.fromYmd(2023, 6, 1);
expect(lunar.getJieQiTable()['冬至'].toYmdHms()).toBe('2022-12-22 05:48:11');
expect(lunar.getJieQiTable()['冬至'].toYmdHms()).toBe('2022-12-22 05:48:01');
});
test('test11', () => {
const lunar = Solar.fromYmd(2024, 2, 4).getLunar();
expect(lunar.getPrevJie(true).getName()).toBe('立春');
expect(lunar.getNextJie(true).getName()).toBe('惊蛰');
});

View File

@@ -663,3 +663,8 @@ test('test072', () => {
expect(lunar.getYearInGanZhi()).toBe('辛未');
expect(lunar.getYearShengXiao()).toBe('羊');
});
test('test073', () => {
const solar = Lunar.fromYmd(2024, 10, 10).getSolar();
expect(solar.toString()).toBe('2024-11-10');
});

View File

@@ -63,7 +63,7 @@ test('16', () => {
solarList.forEach(solar => {
timeList.push(solar.toYmdHms());
})
expect(timeList).toStrictEqual(['1976-09-21 12:00:00', '1916-10-06 12:00:00']);
expect(timeList).toStrictEqual(['1916-10-06 12:00:00', '1976-09-21 12:00:00']);
});
test('17', () => {
@@ -72,7 +72,7 @@ test('17', () => {
solarList.forEach(solar => {
timeList.push(solar.toYmdHms());
})
expect(timeList).toStrictEqual(['1999-07-21 16:00:00', '1939-08-05 16:00:00']);
expect(timeList).toStrictEqual(['1939-08-05 16:00:00', '1999-07-21 16:00:00']);
});
test('18', () => {
@@ -81,7 +81,7 @@ test('18', () => {
solarList.forEach(solar => {
timeList.push(solar.toYmdHms());
})
expect(timeList).toStrictEqual(['1960-12-17 12:00:00', '1901-01-01 12:00:00']);
expect(timeList).toStrictEqual(['1901-01-01 12:00:00', '1960-12-17 12:00:00']);
});
test('19', () => {
@@ -90,7 +90,7 @@ test('19', () => {
solarList.forEach(solar => {
timeList.push(solar.toYmdHms());
})
expect(timeList).toStrictEqual(['2020-07-21 22:00:00', '1960-08-05 22:00:00']);
expect(timeList).toStrictEqual(['1960-08-05 22:00:00', '2020-07-21 22:00:00']);
});
test('20', () => {
@@ -109,12 +109,12 @@ test('22', () => {
});
test('23', () => {
const solarList = Solar.fromBaZi('癸卯', '甲寅', '癸丑', '甲子', 2, 1843);
const solarList = Solar.fromBaZi('癸卯', '甲寅', '甲寅', '甲子', 2, 1843);
const timeList = [];
solarList.forEach(solar => {
timeList.push(solar.toYmdHms());
})
expect(timeList).toStrictEqual(['2023-02-24 23:00:00', '1843-02-08 23:00:00']);
expect(timeList).toStrictEqual(['1843-02-09 00:00:00', '2023-02-25 00:00:00']);
});
test('24', () => {
@@ -123,7 +123,7 @@ test('24', () => {
solarList.forEach(solar => {
timeList.push(solar.toYmdHms());
})
expect(timeList).toStrictEqual(['1960-01-15 16:00:00', '1900-01-29 16:00:00']);
expect(timeList).toStrictEqual(['1900-01-29 16:00:00', '1960-01-15 16:00:00']);
});
test('25', () => {

299
lunar.js

File diff suppressed because one or more lines are too long

View File

@@ -1,7 +1,7 @@
{
"name": "lunar-javascript",
"version": "1.6.9",
"description": "lunar is a calendar library for Solar and Chinese Lunar.",
"version": "1.7.1",
"description": "lunar是一款无第三方依赖的公历(阳历)、农历(阴历、老黄历)、佛历和道历工具,支持星座、儒略日、干支、生肖、节气、节日、彭祖百忌、每日宜忌、吉神宜趋、凶煞宜忌、吉神(喜神/福神/财神/阳贵神/阴贵神)方位、胎神方位、冲煞、纳音、星宿、八字、五行、十神、建除十二值星、青龙名堂等十二神、黄道日及吉凶等。lunar is a calendar library for Solar and Chinese Lunar.",
"main": "index.js",
"scripts": {
"test": "jest"
@@ -42,7 +42,7 @@
"青龙名堂等十二神",
"黄道黑道日"
],
"author": "6tail",
"author": "6tail <6tail@6tail.cn> (https://6tail.cn)",
"license": "MIT",
"bugs": {
"url": "https://github.com/6tail/lunar-javascript/issues"